在我使用时在此C程序中
useState()
然后程序运行正常,但是当我使用
printf("%c",*(name+5));
然后程序导致崩溃
*(name+5) = '#';
答案 0 :(得分:3)
有...
char * name;
name ="Hello World !";
*(name+5) = '#';
您正在处理字符串文字的内容,这是未定义的行为,很可能会导致崩溃。
制作一个数组,然后可以更改它:
char name[] ="Hello World !";
name[5] = '#';
或:
char buffer[] ="Hello World !";
char *name = buffer;
*(name+5) = '#';
请注意,这里将字符串文字"Hello World!"
的内容复制到允许您更改的内容的数组中。