【发布时间】:2020-01-20 08:26:28
【问题描述】:
我想在 C 中将 .txt 文件解析为一维数组。我正在使用 fgets 函数将文件的内容读入数组(“波形”作为文件内容所在的数组存储 - 定义为“char”)。保存的值需要作为整数值保存到新数组中。我不确定我哪里出错了。 P.S:我是 C 编程新手,请多多包涵 :) 请忽略索引问题,由于粘贴完成
int main(){
int a, win[10];
FILE *filename = fopen("testFile.txt","r");
char waveform[10];
if (filename == NULL)
{
printf("Error opening file.\n");
exit(8);
}
for(int i =0;1;i++){
if(fgets(waveform[i], 10, filename) == NULL);
break;
if(i < 10)
{
a = atoi(waveform[i]);
win[i] = a;
}
}
fclose(filename);
return 0;
}
Compiler errors - image embedded
testFile.txt 中的数据: 1 到 10 个行向量。
【问题讨论】:
-
您在
if(fgets...行有一个尾随;,不应该在那里。 -
atoi需要一个字符串。所有的编译器错误在哪里? -
请回答edit问题
-
请复制编译器错误。仅在必要时使用图片。
-
您需要展示
testFile.txt的最小示例。
标签: c file loops for-loop fgets