我正在尝试使用扫描文件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这里做错了什么?为什么不从文件中读取整个字符串?