#include <stdio.h>
int main()
{
void change(char p[]);
char a[] = "I am a girl.";
change(a);
printf("%s\n", a);
return 0;
}
void change(char *p)
{
p = "I am a boy.";
*p = 'Y';
printf("%s\n", p);
}
以上代码是会报错的,因为倒数第三行有问题,为什么呢?如果删去倒数第四行,程序就能正常运行。那么倒数第三行和倒数第四行一起出现为什么会出现问题呢?在这个函数里,改变p的指向为“I am a boy.”,并利用这个"I am a boy "字符串,想把第一个字符'I'改为'Y'.
