如何从C中的文件中分割读取的行,并将不同列的值分配给不同的变量?
我有一个.txt文件,其中每行包含4个由制表符分隔的整数值。 我必须在某个变量中存储第一个值,比如a 另一个变量的第二个值,比如b 另一个变量的第三个值,比如c。
然后将a,b和c作为参数传递给函数。
然后从文件中读取下一行并执行与上面相同的操作直到文件结束。 我正在尝试使用getline。
输入文件有这种数据:
1 2 3 4
7 4 3 2
3 2 5 4
2 98 876 989
在一次迭代中
我想要
a=1
b=2
c=3
int r=func(a,b,c)
//some code based on the value of r, such as writing this to a file.
现在阅读下一行 一个= 7 B = 4 C = 3
再次调用函数。 Q1。如何分割数据?
Q2。如何分配不同的变量?
但是无法想出任何令人满意的解决方案。你能帮帮我吗?
谢谢:)
答案 0 :(得分:0)
直接从您可以使用的文件中将数据放入变量
fscanf(file,"%d %d %d",a,b,c);
您的输入文件有4个数字,因此您需要忽略它以便使用,
while(fscanf(file,"%d %d %d %d\n",a,b,c,d)==4)
{
r=func(a,b,c);
//some code using value of r
}
您可以使用与此类似的代码