【发布时间】:2019-07-31 13:19:20
【问题描述】:
我正在尝试从 C++ 中的文本中获取值(所有十进制数)。但我有一个问题,我无法解决它
#include "pch.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
int main()
{
std::ifstream infile("C:\\thefile.txt");
float a, b;
while (infile >> a >> b)
{
// process pair (a,b)
}
std::cout << a << " " << b;
}
文件.txt:
34.123456789 77.987654321
当我运行上面的代码时,
a = 34.1235
b = 77.9877
但我想要
a = 34.123456789
b = 77.987654321
我该怎么办?
编辑:我不想打印出 a 和 b。我只是希望他们得到确切的值。net
【问题讨论】:
-
您的计算机在
float中是否有足够的精度来做到这一点?你确定吗? -
@LightnessRacesinOrbit 我不确定。我不想打印 a 和 b。我只想要 a 和 b 获得所有值。如果他们已经获得了所有值,并且由于打印而出现的时间很短,那没关系。你能告诉我吗?
-
@NathanOliver 我接受了你的小回答。谢谢兄弟
-
@NathanOliver 我应该使用哪种类型?双倍还是浮动?
-
对于浮动 a, b;