Maison >développement back-end >C++ >Devriez-vous utiliser `if (ptr == NULL)` ou `if (ptr)` pour les vérifications de pointeurs nuls en C/C ?
Quelle est la meilleure façon de vérifier les pointeurs NULL dans C/C ?
Dans une récente revue de code, un contributeur a affirmé que tous les pointeurs NULL les vérifications de pointeur doivent être effectuées avec une comparaison explicite avec NULL :
<code class="cpp">int * some_ptr; // ... if (some_ptr == NULL) { // Handle null-pointer error } else { // Proceed }</code>
Cette approche a été contestée par un autre critique, qui a fait valoir que la méthode traditionnelle d'utilisation d'une variable de pointeur dans une instruction if est également une méthode valide et concise. moyen de vérifier NULL :
<code class="cpp">int * some_ptr; // ... if (some_ptr) { // Proceed } else { // Handle null-pointer error }</code>
. Quelle méthode préférez-vous et pourquoi ?
Selon la réponse préférée, cette dernière méthode est préférable pour plusieurs raisons :
En conclusion, lors de la vérification des pointeurs NULL en C/C , la méthode préférée consiste à utiliser la syntaxe idiomatique if (ptr) ou if (!ptr). Cette approche est claire, concise et compatible avec les classes C.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!