我有一个文本文件,我应该用文件输入/输出技术阅读:
47900 31007
34500 9100
57984 14822
这是我的代码:
#include <stdio.h>
FILE *input;
int CA1;
int CA2;
int CA3;
int CL1;
int CL2;
int CL3;
int main (void)
{
input = fopen("c:\\class\\currentratio.txt","r");
fscanf(input,"%d %d\n", &CA1, &CL1);
fscanf(input, "%d %d\n", &CA2, &CL2);
fscanf(input, "%d %d\n", &CA3, &CL3);
printf("%d", &CA1);
fclose(input);
return 0;
}
当我打印数字时,它们是
4229680,4229704,4229744,4229712,4229664和4229720.
感谢帮助人员。
答案 0 :(得分:6)
您正在打印变量的地址而不是它的值
摆脱地址:printf("%d", CA1);
另一件事,你没有检查,如果文件打开成功,你应该处理它,特别是在某些东西不起作用的情况下。
if(!input)
{
printf("Could not open the file specified.");
return -1;
}