我正在尝试使用扫描文件fscanf
并将字符串放入大小为 20 的 char 数组中,如下所示:
char buf[20];
fscanf(fp, "%s", buf);
该文件fp
当前包含:1 + 23
.
我正在设置指向第一个元素的指针,buf
如下所示:
char *p;
p = buf;
印刷buf
,printf("%s", buf)
仅产量1
。尝试增加p
和打印也会打印出垃圾(p++; printf("%c", *p)
)。
我在fscanf
这里做错了什么?为什么不从文件中读取整个字符串?