Melalukan Rujukan kepada Tatasusunan Dua Dimensi dalam C
Apabila menghantar rujukan kepada tatasusunan dua dimensi kepada fungsi, ia adalah penting untuk mengisytiharkan parameter dengan betul untuk mengelakkan ralat penyusunan. Coretan kod yang disediakan cuba menghantar rujukan kepada tatasusunan dua dimensi tetapi menghadapi ralat.
Untuk menyelesaikan isu ini, parameter fungsi perlu diisytiharkan menggunakan tatatanda yang betul:
<code class="cpp">void do_something(int (&array)[board_width][board_height]);</code>
Sintaks ini mengisytiharkan tatasusunan sebagai rujukan kepada tatasusunan saiz board_width. Tanda kurung segi empat tertanam adalah penting untuk mentakrifkan dimensi tatasusunan.
Sebaliknya, pengisytiharan berikut:
<code class="cpp">void do_something(int array[board_width][board_height]);</code>
sebenarnya menghantar penuding kepada sub-tatasusunan pertama dua- tatasusunan dimensi, yang biasanya bukan tingkah laku yang diingini apabila menghantar rujukan.
Dengan mengisytiharkan parameter sebagai rujukan menggunakan pengendali "&", fungsi itu boleh mengakses dan mengubah suai kandungan tatasusunan asal secara terus. Ini berbeza dengan menghantar penuding, yang hanya membenarkan fungsi mengakses elemen tatasusunan secara tidak langsung melalui penyahrujukan penuding.
Menggunakan pengisytiharan rujukan yang betul memastikan fungsi itu boleh mengendalikan dan memanipulasi tatasusunan dua dimensi sebagai dimaksudkan, tanpa perlu melepasi dimensi tatasusunan secara eksplisit sebagai argumen.
Atas ialah kandungan terperinci Bagaimanakah anda menghantar rujukan dengan betul kepada tatasusunan dua dimensi dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!