Latest web development tutorials

C ++ Null Pointer

C ++ Zeiger C ++ Zeiger

Zum Zeitpunkt der Variablendeklarationen, wenn nicht die genaue Adresse zugewiesen werden, weisen ein Nullwert für die Zeigervariable ist eine gute Programmierpraxis. Fu NULL - Zeiger - Wert wird einNull - Zeiger genannt.

Ein NULL-Zeiger wird in der Standardbibliothek Null Konstanten definiert. Betrachten Sie das folgende Programm:

#include <iostream>

using namespace std;

int main ()
{
   int  *ptr = NULL;

   cout << "ptr 的值是 " << ptr ;
 
   return 0;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

ptr 的值是 0

Bei den meisten Betriebssystemen, wird das Programm nicht den Zugriff auf Speicheradresse 0 zu ermöglichen, da der Speicher für das Betriebssystem reserviert ist. Jedoch hat die Speicheradresse 0 eine besondere Bedeutung, es zeigt an, daß der Zeiger nicht auf einen zugreifbaren Speicherposition zeigt. Aber nach der Konvention, wenn der Zeiger einen Nullwert (Nullwert) enthält, wird angenommen, dass es nicht zu irgendwelchen Gegenständen verweisen.

Um sich für einen Null-Zeiger zu überprüfen, können Sie die if-Anweisung verwenden, wie folgt:

if(ptr)     /* 如果 p 非空,则完成 */
if(!ptr)    /* 如果 p 为空,则完成 */

Deshalb, wenn alle nicht verwendeten Zeiger einen Nullwert zugewiesen werden, während die Verwendung eines Null-Zeiger zu vermeiden, ist es möglich, den Missbrauch von einem nicht initialisierten Zeiger zu verhindern. In vielen Fällen nicht initialisierte Variablen gibt es einige Müll Wert, wird das Programm schwierig zu debuggen.

C ++ Zeiger C ++ Zeiger