Najlepsza odpowiedź
Cóż, nie ma nic takiego jak:
int p*;
To jest nieprawidłowa instrukcja. Otrzymasz błąd kompilacji z tym kodem.
Z drugiej strony int * p i int * p są w zasadzie takie same. To tylko kwestia stylu. Jeśli chodzi o kompilator C / C ++, nie ma znaczenia, czy piszesz int * p, czy int * p. Tak więc, jeśli wolisz skojarzyć * z typem zamiast ze zmienną, możesz to zrobić.
Ale jedna ważna uwaga:
Poniższa deklaracja tworzy taką nie dwa wskaźniki całkowite:
int* a,b;
Tutaj b jest zadeklarowane jako liczba całkowita, gdzie jako a jest wskaźnikiem liczby całkowitej. Ta instrukcja:
int *a,*b;
deklaruje a i b jako wskaźniki całkowite.
Odpowiedź
Int p *: heaven „jeszcze nie widziałem Int * p: tak jak tutaj * jest dołączone do p, więc tylko p będzie wskaźnikiem do liczby całkowitej. jeśli zadeklarujesz inną zmienną po p oddzielonym średnikiem, nie będzie wskaźnik. To znaczy. int * p, q. Tutaj p będzie wskaźnikiem do liczby całkowitej, ale q będzie normalną zmienną typu int, a nie wskaźnikiem.
Przypadek Int * p, q działa podobnie do Int * p, q. Obie deklaracje deklarują p jako wskaźnik liczby całkowitej, a q jako normalną liczbę całkowitą. Int * p, q to typ deklaracji, która wprowadza w błąd programistów.