Beste Antwort
Nun, es gibt nichts wie:
int p*;
Es handelt sich um eine ungültige Anweisung. Mit diesem Code wird ein Kompilierungsfehler angezeigt.
Andererseits int * p und int * p sind grundsätzlich gleich. Es ist nichts anderes als eine Frage des Stils. Für den C / C ++ – Compiler spielt es keine Rolle, ob Sie int * p oder int * p schreiben. Wenn Sie das * lieber dem Typ als der Variablen zuordnen möchten, können Sie dies tun.
Beachten Sie jedoch Folgendes:
Die folgende Deklaration erstellt eine nicht zwei ganzzahlige Zeiger:
int* a,b;
Hier wird b als ganzzahliger Zeiger deklariert, wobei a ein ganzzahliger Zeiger ist. Diese Anweisung:
int *a,*b;
deklariert sowohl a als auch b als ganzzahlige Zeiger.
Antwort
Int p *: noch nicht gesehen Int * p: Da hier das * an p angehängt ist, ist nur p ein Zeiger auf eine Ganzzahl. Wenn Sie eine andere Variable deklarieren, nachdem p durch ein Semikolon getrennt ist, wird dies nicht der Fall sein ein Zeiger. Das heißt, int * p, q. Hier ist p ein Zeiger auf eine ganze Zahl, aber q ist eine normale int-Variable und kein Zeiger.
Der Fall Int * p, q funktioniert ähnlich wie Int * p, q. Beide Deklarationen deklarieren p als ganzzahligen Zeiger und q als normale ganze Zahl. Int * p, q ist eine Art Deklaration, die Programmierer verwirrt.