C语言写入文件时指针和数组有什么区别?
用数组的方式写入一行字符串,成功执行。
int main()
{
char str[10];
//char *str;
FILE *fp;
gets(str);
fp = fopen("test.txt","a+");
fputs(*str,fp);
//将字符串str追加写到test.txt文件中
fclose(fp);
return 0;
}
将char str[10];改为 char *str;
程序报错,这是为什么?
int main()
{
//char str[10];
char *str;
FILE *fp;
gets(str);
fp = fopen("test.txt","a+");
fputs(*str,fp);
//将字符串str追加写到test.txt文件中
fclose(fp);
return 0;
}