char *a = "abc";
char b = 'D';
a[0] = b;
这里“abc”为字符串常量,存放在常量区,只读不可写;指针a指向字符串‘a’的地址;
以上代码不能成功运行,因为
a[0] = b; 这代码为修改常量区的值;
char a[4] = "abc";
char b = 'D';
a[0] = b;
这段代码则能够成功运行,因为“abc“存放在栈区,可读可写;因此以上代码可正常运行;
char *a = "abc";
char b = 'D';
a[0] = b;
这里“abc”为字符串常量,存放在常量区,只读不可写;指针a指向字符串‘a’的地址;
以上代码不能成功运行,因为
a[0] = b; 这代码为修改常量区的值;
char a[4] = "abc";
char b = 'D';
a[0] = b;
这段代码则能够成功运行,因为“abc“存放在栈区,可读可写;因此以上代码可正常运行;