Tôi nhận thấy một số người sử dụng ký hiệu sau để khai báo các biến con trỏ.
(a) char* p;
thay vì
(b) char *p;
Tôi sử dụng (b). Hợp lý đằng sau ký hiệu (a) là gì? Ký hiệu (b) có ý nghĩa hơn đối với tôi vì bản thân con trỏ ký tự không phải là một kiểu. Thay vào đó, kiểu là ký tự và biến có thể là một con trỏ đến ký tự.
char* c;
Điều này có vẻ như có một kiểu char * và biến c thuộc kiểu đó. Nhưng thực tế kiểu là char và * c (vị trí bộ nhớ được trỏ bởi c) là kiểu đó (char). Nếu bạn khai báo nhiều biến cùng một lúc thì sự phân biệt này trở nên rõ ràng.
char* c, *d;
Điều này trông kỳ lạ. Cả c và d đều là cùng một loại con trỏ trỏ đến một ký tự. Trong này vì cái tiếp theo trông tự nhiên hơn.
char *c, *d;
Cảm ơn.