【发布时间】:2012-10-17 23:06:15
【问题描述】:
我已经为此苦苦挣扎了很长时间,试图弄清楚,我猜这是一个非常愚蠢的菜鸟错误,但我无法弄清楚。
所以我试图从一个文件中读取一个整数,然后在其中做一些操作,为了这个问题我只是想在这里输出它:
FILE * pFile;
int number;
pFile = fopen ("myfile.txt","r");
if (pFile!=NULL) {
fscanf(pFile, "%d", number);
fclose (pFile);
}
printf("number: %i", number);
return 0;
myfile.txt 的内容:
123
但是当我运行它时,它什么也没读,而是说
RUN FAILED (exit value 1, total time: 32ms)
感谢大家的帮助
编辑:我忘了提,它作为一个字符串工作,它读取正确的数字,但我不能对它做任何操作,如果我将数字类型设置为加倍它可以工作但输出一些随机数数百万...
【问题讨论】:
-
它作为字符串工作,因为字符串是指针 (char*),而 fscanf() 需要存储输入的位置的地址。跨度>