【发布时间】:2014-11-07 01:19:48
【问题描述】:
C 中的 char[] 和 char * 有什么区别? 我知道两者都创建 make 's' 指向字符数组的指针。 然而,
char s[] = "hello";
s[3] = 'a';
printf("\n%s\n", s);
打印helao,而
char * s = "hello";
s[3] = 'a';
printf("\n%s\n", s);
给我一个分段错误。为什么会有这样的差异? 我在 Ubuntu 12.04 上使用 gcc。
【问题讨论】: