问题描述
- 怎么把-1.1675264738839661e-025格式的浮点数从txt读取?
-
怎么把-1.1675264738839661e-025格式的浮点数从txt读取?
c语言
解决方案
直接读取,split切分,itof转换成浮点数。
解决方案二:
人家问的是C,居然有人用CPP??!!!
我做个例子:
#include
int main(int argc,char** argv)
{
float flt = 0.0;
if (argc == 2) {
sscanf(argv[1], "%f", &flt);
fprintf(stdout, "string: %s ; flt: %f
", argv[1], flt);
}
return 0;
}
解决方案三:
include后面的怎么没显示出来。
#include <stdio>
int main(int argc,char** argv)
{
float flt = 0.0;
if (argc == 2) {
sscanf(argv[1], "%f", &flt);
fprintf(stdout, "string: %s ; flt: %f
", argv[1], flt);
}
return 0;
}
主要调用sscanf,来扫描缓冲区进行格式化到flt。
解决方案四:
个人觉得读取数据不只是看你需要的数据格式是什么样子的,还要看有没有其他格式的数据,如果你的txt中都是这样的数字且最好是一行一个的,那么就简单多了,每行遍历一遍就能获取了。
如果不是一行一个而是一行多个且用确定分隔符号分隔的,也好办,遍历一行,切割,然后转化。
最麻烦的是你的txt中有其他数据且格式不固定,就需要用正则取匹配了,希望没有这么复杂。
你还是贴一下你的txt中的内容吧。
解决方案五:
直接读取,字符串分割,用atof转换
解决方案六:
Python 以txt格式保存和读取json数据
解决方案七:
cpp用 istringstream 试试
时间: 2024-08-05 11:44:47