使用Xcode 4.5.2进行C语言编程时,我认为可能重复:
C程序字符串字面量
总线错误:10错误
并且。
C程序字符串字面量
总线错误:10错误
char * string = "abc";
string[0] = 'f';
并且。
char string[4] = "abc";
string[0] = 'f';
这两行代码看起来是等价的,但第一行会报错:
EXC_BAD_ACCESS (code = 2, address = 0x100 ...)
而第二行不会出错。在纯C语言中,我认为这两行代码应该是等价的,发生了什么事情呢?
int main (void) {
char * string = "abc";
string[0] = 'f';
} // main