c++指针和字符串的问题 紧急!!!!!!!!! 高手请进
char*a="abcdefg";cout<<a[0];//没问题可以输出a[0]='b';//为什么会显示不能访问???...
char *a="abcdefg";
cout<<a[0]; //没问题可以输出
a[0]='b'; //为什么会显示不能访问??? 展开
cout<<a[0]; //没问题可以输出
a[0]='b'; //为什么会显示不能访问??? 展开
展开全部
改成*(a+0)='b'就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为a是一个指向常量字符串的指针,所以你更改它的内容会报错
如果a指向的是一个字符数组,像你这样用就没有问题。
如果a指向的是一个字符数组,像你这样用就没有问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char *a定义的是一个字符指针,指向了常量"abcdefg",所以不能修改
你可以这么定义char a[] = "abcdefg";这样就是变量定义了
你可以这么定义char a[] = "abcdefg";这样就是变量定义了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询