Den Unterschied verstehen: char vs char string
Bei der Deklaration von nullterminierten Zeichenfolgen in C ist das Format von Die Erklärung kann Fragen aufwerfen. Die Optionen sind „charstring“ oder „charstring“. Um den Unterschied zu verstehen, schauen wir uns die einzelnen Deklarationen genauer an:
"char* string":
In dieser Deklaration ist „string“ ein Zeiger auf ein Zeichen. Es gibt an, dass „string“ die Adresse eines Zeichens enthält. Im Wesentlichen ist „string“ selbst kein Zeichen, sondern ein Zeiger, der auf einen Speicherort zeigt, der ein Zeichen speichert.
"char *string":
Im Gegensatz zur vorherigen Deklaration hier ist „string“ ein einzelnes Zeichen. Die Deklaration impliziert, dass „string“ ein eigenständiges Zeichen und kein Zeiger auf ein Zeichen ist.
Basierend auf diesen Unterscheidungen wird deutlich, dass „char* string“ die passendere Deklaration ist, weil sie genau ist stellt die Art des Objekts als Zeiger auf ein Zeichen dar.
Warum das letztere Format häufig verwendet wird:
Obwohl „charstring“ macht mehr logischen Sinn, das herkömmliche Format „char string“ wird oft beobachtet. Diese Vorgehensweise ist auf ein potenzielles Problem bei der Deklaration mehrerer Variablen in einer einzigen Zeile zurückzuführen. Betrachten Sie den folgenden Ausschnitt:
char* string1, string2;
Diese Deklaration kann zu Mehrdeutigkeiten führen, da unklar ist, ob „string2“ auch ein Zeiger oder ein einzelnes Zeichen ist. Um solche Verwirrung zu vermeiden, wird allgemein akzeptiert, bei der Deklaration mehrerer Variablen „charstring“ zu verwenden und „charstring“ für einzelne Zeigerdeklarationen zu reservieren.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „char* string' und „char *string' in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!