关于指针,对于常量指针和指向常量的指针也是傻傻分不清。看到定义时,不知道是指针不能变,还是指针指向的内容不能变量。
先看形式:
const char * A;
char * const B;
这两种有什么区别?傻傻分不清。
A这种定义,说明const修饰的是char *。跟A没什么关系,说明A自己是可以变的。const修饰的就是指针指向的内容,A它是指向常量的指针。A指向的地址不固定,但是A不能修改这个地址里的内容。
B这种定义,说明const修饰B。就是说,B指向固定的地址,但是这个地址指向的内容是可以被修改的。