【发布时间】:2018-07-17 04:34:53
【问题描述】:
我正在尝试制作一个基本的 C 程序来从文件中读取,但由于某种原因,当我使用 make Test1 然后运行它时 ./Test1 test1.txt 我得到“错误:'s' may be used uninitialized in这个函数”。
#include <stdio.h>
#include <stdlib.h>
int main (int argc, char** argv) {
if (argc < 2) {
printf("error\n");
return 0;
}
FILE *fp = fopen(argv[1], "r");
if (fp == NULL) {
printf ("error\n");
return 0;
}
char * s;
int r = fscanf(fp, "%s", s);
while (r != EOF) {
printf("%s\n", s);
r = fscanf(fp, "%s", s);
}
return 0;
}
【问题讨论】:
-
程序编译后如何启动?
-
尝试添加断点并调试。
-
char * s 现在没有指向任何东西。