c - 字符串文字是否常量?

标签 c c-strings arrays

<分区>

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/

相关文章:

python - Numpy 通过分组数组拆分数组

有人可以向我解释使用指针与索引访问数组的性能差异吗?

c - 两个代码片段有什么区别?如果我不告诉数组需要多少字节,这对编译器有什么影响

c - 从字符串中读取数字数组

javascript - 基于属性的javascript克隆对象

java - 检查数组是否具有特定字符,为什么我的代码不起作用?

c - 静态变量未初始化为零

c - 为什么 u-boot 总是将写入的 block 标记为坏 block ?

c - c 中具有常量参数的结构体数组

c++ - 如何正确使用 _snprintf_s()?