【发布时间】:2021-06-25 23:24:14
【问题描述】:
假设我有一个字符串“53.430996”,我想将其转换为字符串并在我尝试过的浮点数之后存储所有值:
#include <iostream>
#include <bits/stdc++.h>
#include <string>
#include <stdlib.h>
using namespace std;
int main(){
char* convertme="53.430996";
double converted=atof(convertme);
cout << converted;
return 0;
}
但是输出是 53.431 但我需要 53.430996 所以我可以稍后将其转换为 long long
static cast < long long > (coord ∗ 100000)
所以,我可以得到没有浮点 5343099 的值
【问题讨论】:
-
我最近回答了一个类似(但不完全相同)的问题:stackoverflow.com/a/66822431/4641116 和 stackoverflow.com/a/50970282/4641116
-
我无法理解。你能回答我的代码吗?
-
"那么,我可以得到不带浮点 5343099 的值" --> 你用
static cast < long long > (coord ∗ 100000)得到了什么值? -
如果您有一个字符串,您可能不想先将其转换为双精度。你可能会遇到这个:https://stackoverflow.com/questions/588004/is-floating-point-math-broken