char * const p; //常量指针,p的值不可以修改 char const * p;//指向常量的指针,指向的常量值不可以改 const char *p; //和char const *p 3 char str1[] = "abc"; char str2[] = "abc"; const char str3[] = "abc"; const char str4[] = "abc"; const char *str5 = "abc"; co...
对于const char *p p是一个指针,指向const char 类型的; 例如: char str[] = "Hello world!"; char ss[] = "I'm good~"; const char *ptr; ptr = str; ptr[0] = 'W'; 失败; 但是: ptr = ss; 可以; 对于char* const p p是一个指针,只能指向一个地方,但是指向的这个地方可以修改其值; ...
解:const char* p和char const *p修饰的是p所指向的变量, 不可以用*p=’a’等这样的方式修改变量区的内容. 指针本身是可以修改的,比如说 char x,y; const *p = &x, p = &y,修改指针本身是可以的,*p = ‘b’就不行。 Char *const p;中const修饰的是指针,明确指针在操作过程中不可以修改, 而指针...
char const* p : 等同于const char* p const char * p; p is pointer to const char; 例:const char *name1="John"; char s[]="abc"; name1=s; //正确,name1存放的地址可以改变 char * name2= name1; //不可以,因为name2 和 name1存放的是同一块地址,如果name2地址中的内容改了,则name1...
char * const p char const * p const char *p上述三个有什么区别?相关知识点: 试题来源: 解析 答案: char * const p; //常量[1]指针,p的值不可以修改 char const * p;//指向常量的指针,指向的常量值不可以改 const char *p; //和char const *p反馈 收藏 ...
【答案】:如果const位于星号的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;如果const位于星号的右侧,const就是修饰指针本身,即指针本身是常量。
而p++,则表示把该地址变量向下一个存储单元移动一位,如4B3F6A到4B3F6B.所以合法。 1. 2. 3. 2.char *const p 修饰指针为常量 指针指向内容可以是变量~既 p++这样的操作不合法 *p='3' 合法 const char * p 是p指向的内容是常量~p是变量~ ...
const char *p、char const *p、char * const p的区别?,constchar*p和charconst*p是一样的,都表示定义一个指向字符常量的指针,指针的内容(字符)不可变.char*constp表示一个指向字符的指针常量,字符可以改变,但是指针指向的地址不可变.
(1)char *p:p是一个工作指针,可以用来对任意位置 (非系统敏感区域)进 行读操作和写操作 ,一次读写一个字节(char占一个字节)。(2)const char*p或者char const *p(因为没有const*p运算,因此const修饰的还是前面的char):可以对任意位置(非系统敏感区域)进行“只读” 操作。(“只读”是相对于char *p来说所...
const char p 和 char const p 是一个意思,都是p所指向的变量的值不能改变,例如:const char ch = 'a';const char p = &ch;p = 'b';//这样是错的 char const p,意思是p所指向的地址是不能改变的,例如:char const p = &ch1;p = &ch2;//这样是错的 好就采纳吧 C#刚毕业 ...