Apakah Cara Terbaik untuk Semak Penunjuk NULL dalam C/C ?
Dalam semakan kod baru-baru ini, seorang penyumbang menegaskan bahawa semua NULL semakan penunjuk harus dilakukan dengan perbandingan yang jelas kepada NULL:
<code class="cpp">int * some_ptr; // ... if (some_ptr == NULL) { // Handle null-pointer error } else { // Proceed }</code>
Pendekatan ini ialah ditentang oleh pengulas lain, yang berpendapat bahawa kaedah tradisional menggunakan pembolehubah penunjuk dalam pernyataan if juga merupakan cara yang sah dan ringkas untuk menyemak NULL:
<code class="cpp">int * some_ptr; // ... if (some_ptr) { // Proceed } else { // Handle null-pointer error }</code>
. Kaedah yang manakah anda lebih suka dan mengapa?
Menurut jawapan pilihan, kaedah yang terakhir adalah lebih baik atas beberapa sebab:
Kesimpulannya, apabila menyemak penunjuk NULL dalam C/C , kaedah pilihan adalah menggunakan idiomatik if (ptr) atau if (! ptr) sintaks. Pendekatan ini jelas, ringkas dan serasi dengan kelas C.
Atas ialah kandungan terperinci Patutkah Anda Gunakan `if (ptr == NULL)` atau `if (ptr)` untuk Semakan Penunjuk Null dalam C/C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!