c++关于const的使用当定义const char *p=”ABC”;时,下列语句正确的是( ) A.char *q=p; B.p[0]=’B’; C.*p=’\0’; D.p=NULL; 答案 c.常量指针,指向的内容不可以写,指针可以变相关推荐 1c++关于const的使用当定义const char *p=”ABC”;时,下列语句正确的是( ) A.char *q=p; B.p[0]...
const char *p是指针常量(指针指向的常量, 也可以写作char const *p), 含义为 *p的值为常量, 也就是说不能修改*p的值.同时,必须给*p初始化一个值.除了B, 其他答案都对*p进行了赋值, 所以都不正确.补充说明一下,char * const p是常量指针(不能修改p指向的地址).反馈 收藏 ...
06const char *、char const *、char *const三者之间的区别 constint abc =12;//abc是常量不能改变abc的值char*p 和const混用charstr[] ="q-wertyuiop";char* p; p =str; *p ='Y';//*p除非在定义中,否则就代表p所指向的内存地址。(*p在=的左边)p++;//Y-wertyuiop,p指向了-wertyuiop(1)constchar...
我们来分别理解以下两个语句,首先要清楚的是char * p语句定义的p是一个指针变量,假设我们用的是第一个语句,那么我们所表达的意思是p的地址是abc,因此会出现问题。 而第二个语句的意思是我们定义了一个指针变量,然后改变了它指向了一个字符串常量。这样以来语句二可以拆分为两个句子,即: 1constchar*p;2p ="ab...
在指针的上下文中,const可以用来限定指针所指向的内存区域是否可修改。比如,char *const p = "abc"; 这里p是一个不可修改的指针,但指针p所指向的字符串"abc"中的字符可以被修改。另一种情况是定义常指针:const 数据类型 *指针变量=变量名 或者 数据类型 const *指针变量=变量名。这里指针变量...
答: char*constp;//常量指针,p的值不可以修改 charconst*p;//指向常量的指针,指向的常量值不可以改 constchar*p;//和charconst*p 3. charstr1[]="abc"; charstr2[]="abc"; constcharstr3[]="abc"; constcharstr4[]="abc"; constchar*str5="abc"; constchar*str6="abc"; char*str7="abc"...
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...
"abc"获得的是一个const char *,也就是一个指向const char的指针,这表示'a'不可变;但你的变量p...
例如,对const char *p进行翻译: 首先看到p:p is 然后是*:p is pointer to 然后是char:p is pointer to char 然后是const:p is pointer to read-only char 翻译为中文:p是指向只读的char的指针 按照这种方式解释,我们对上面四个语句解释如下:
char *p1; //全局未初始化区 main() { int b;栈 char s[]="abc"; //栈 char *p2; //栈 char *p3="123456"; //123456\0在常量区,p3在栈上。 static int c=0; //全局(静态)初始化区 p1 = (char*)malloc(10); p2 = (char*)malloc(20); //分配得来得10和20字节的区域就在堆区。