Heim >Backend-Entwicklung >C++ >Wohin soll der Asterisk gehen? Verständnis der Mehrdeutigkeit der C-Zeiger-Deklaration
Zeigerdefinitionsrätsel: Die Platzierung des Sternchens
Im Bereich der Zeiger kann die Platzierung des Sternchens (*) manchmal zu Problemen führen Verwirrung. Dieser Artikel versucht, die Mehrdeutigkeit zu klären, indem mehrere Beispiele für Zeigerdeklarationen untersucht werden.
Betrachten Sie die folgenden Codeausschnitte:
Traditionell wurde angenommen, dass die ersten drei Beispiele identisch seien und einen Zeiger namens „test“ auf eine Ganzzahl deklarierten. Dies ist jedoch eine falsche Annahme.
Stattdessen ist die Platzierung des Sternchens entscheidend. In den Fällen 4, 5 und 6 sind sowohl „test“ als auch „test2“ Zeiger auf ganze Zahlen. Im Gegensatz dazu ist im Fall 5 nur „test“ ein Zeiger, während „test2“ eine reguläre Ganzzahl ist. Umgekehrt entspricht Fall 6 Fall 5, wobei „test“ ein Zeiger und „test2“ eine Ganzzahl ist.
Um weitere Verwirrung zu vermeiden, wird empfohlen, die Zeigerdeklaration von der Variablendeklaration zu trennen , wie im Folgenden zu sehen:
int* test; int* test2;
Alternativ können Sie Folgendes verwenden:
int *test, *test2;
Diese Methode gewährleistet Klarheit und Genauigkeit in Zeigerdeklarationen.
Das obige ist der detaillierte Inhalt vonWohin soll der Asterisk gehen? Verständnis der Mehrdeutigkeit der C-Zeiger-Deklaration. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!