<分区>
Possible Duplicate:
Is it possible to modify a string of char in C?
char *s = "anusha";
这像一个常量指针吗?当我试图通过编写 s[3]='k'
来更改位置 3 中的字符时,它给了我一个段错误。所以我假设它就像指向一个常量数组或 s 是一个常量指针?两者中的哪一个?请澄清。
<分区>
Possible Duplicate:
Is it possible to modify a string of char in C?
char *s = "anusha";
这像一个常量指针吗?当我试图通过编写 s[3]='k'
来更改位置 3 中的字符时,它给了我一个段错误。所以我假设它就像指向一个常量数组或 s 是一个常量指针?两者中的哪一个?请澄清。
最佳答案
没错,你不能修改字符串文字。
但是,这样做是合法的:
char s[] = "anusha";
s[3] = 'k'
这里的区别在于它存储为可以修改的本地数组。
关于c - 字符串文字是否常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9137958/