以下作业是否有效?或者这些都会产生问题.请建议.
const char * c1;
const char * c2;
const char * c3;
char * c4;
c2 = c1;
c2 = c3;
c2 = c4;
Run Code Online (Sandbox Code Playgroud)
如果我执行以下操作,那该怎么办呢?
const char * c5 = "xyz";
char * c6 = "abc";
c2 = c5;
c2 = c6;
Run Code Online (Sandbox Code Playgroud)
Ed *_*eal 31
在你的脑海中画一条线穿过星号.左边是指向的,右边是什么类型的指针
例如
const char * const p-指针p是恒定的,所以是人物p指向-即不能改变指针和内容都什么p指向const char * p- p指向恒定字符.您可以更改值p并使其指向不同的常量字符.但无论如何p,你都无法改变内容.char * const p - 您无法更改指针但可以更改内容最后
char * p - 一切都准备好了希望有所帮助.
所有这些都是有效的语句,因为您不会取消引用它们,因为所有指针都未被初始化或未指向任何有效的内存位置.
它们是有效的,因为指针不是常量,但指针指向的值是常量.因此,这里的指针可以重新分配到指向不同的位置.