關于指針,對于常量指針和指向常量的指針也是傻傻分不清。看到定義時,不知道是指針不能變,還是指針指向的內容不能變量。
先看形式:
const char * A;
char * const B;
這兩種有什么區別?傻傻分不清。
A這種定義,說明const修飾的是char *。跟A沒什么關系,說明A自己是可以變的。const修飾的就是指針指向的內容,A它是指向常量的指針。A指向的地址不固定,但是A不能修改這個地址里的內容。
B這種定義,說明const修飾B。就是說,B指向固定的地址,但是這個地址指向的內容是可以被修改的。