该内存不能为written
#include <stdio.h>
int main()
{
char *p = "abc";
printf("%s\n", p);
*p = 'd';
printf("%s\n", p);
return 0;
}
编译、连接都通过,但是运行出现“该内存不能为‘written’”的应用程序错误;
正确的程序应该是:
#include <stdio.h>
int main()
{
char p[] = "abc";
printf("%s\n", p);
*p = 'd';
printf("%s\n", p);
return 0;
}