如何从C ++中读取文件中的第一个数字

时间:2013-09-16 02:51:28

标签: c++ input

我有这样的txt文件。

51.5u-07
-6.5 -10      
55u-10
-7 -10    
55u-10
-7 -10    
55u-10
-7 -10    
54u-10
-7 -10    
54.5u-10
-7 -10    
55u-10
-7 -10    
54.5u-10
-7 -10    
55.5u-10
-7.5 -10

我想读取这个文件,将所有奇数行的值转换为int,vec1的向量。 将所有偶数行的值都转换为int,vec2的向量。

如vec1是[51.5,55,55,55,... vec2是[-6.5,-7,-7,-7 ...] 有人可以帮帮我吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用fscanf

一次阅读这两个数字
double first;
int second;
scanf("%lf%*[ u]%d", &first, &second);

“magic”采用格式字符串:它使用double读取%lf,然后使用u跳过空格或%*[ u],最后读取int使用%d。在循环中执行此操作,根据需要将firstsecond变量推送到两个向量上。

Demo on ideone