读取txt中的数字,读取的为“-1.4780608e+001”,我如何将它转化为科学计数法的数字。字符串转化为浮点型用atof,这个有专门的函数吗?或者怎么转化?
解决方案 »
- MFC里两个函数搞不清了...
- 用VC读写XML文件?
- 关于使用updatebatch()批量更新数据的问题,在线等待
- 求助:关于使用FindNextFile()读取文件的顺序的问题
- 打开我的电脑,点击文件夹选项,出来的整个界面怎样做成的啊?
- 获得文件创建时间
- 在 对话框里怎么家菜单
- 操作系统术语的问题??
- 如何实现自己设计的标题栏,并且响应最大化,最小化,关闭,移动消息?最好有例程!
- 为何不可以调试这样的程序?
- error: expected nested-name-specifier before 'writer_trait'
- Windows Media Player 控件的“快退” 无效问题
pchar为字符串“-1.4780608e+001”,
f1为float型
{
double r; //结果
int e; //指数
int i; //循环用
char *str=p;
if(str==NULL)
return 0.0;
if(sscanf(str,"%fe+%3d",&r,&e)==0)
return 0.0;
for(i=0;i<e;i++)
r*=10.0;
return r;
}使用的时候:
double x=E_TO_F("-1.4780608e+001");或者:
double x;
char *p="-1.4780608e+001";
x=E_TO_F(p);
直接读就可以,但要用double和%lf格式double x;
char *p="-1.4780608e+001";
sscanf(p,"%lf",&x);