C语言中有没有把字符转型化为 浮点型的函数?

我要输入一个字符串 12.35
然后用一个函数 转化为 浮点型的12.35 用来参加计算
高手帮忙,谢谢了!

C语言中将字符串转型化为浮点型数据的函数有:atof()  和 strtod()

头文件:
#include <stdlib.h>
函数原型:
double atof (const char* str); 
【参数说明】str 为要转换的字符串。
【函数说明】atof() 函数会扫描参数str字符串,跳过前面的空白字符(例如空格,tab缩进等,可以通过 isspace() 函数来检测),直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。参数str 字符串可包含正负号、小数点或E(e)来表示指数部分,如123. 456 或123e-2。

【返回值】返回转换后的浮点数;如果字符串 str 不能被转换为 double,那么返回 0.0。

double strtod (const char* str, char** endptr);
【参数说明】str 为要转换的字符串,endstr 为第一个不能转换的字符的指针。

【函数说明】strtod() 函数会扫描参数str字符串,跳过前面的空白字符(例如空格,tab缩进等,可以通过 isspace() 函数来检测),直到遇上数字或正负符号才开始做转换,到出现非数字或字符串结束时('\0')才结束转换,并将结果返回。参数 str 字符串可包含正负号、小数点或E(e)来表示指数部分。如123. 456 或123e-2。

若endptr 不为NULL,则会将遇到的不符合条件而终止的字符指针由 endptr 传回;若 endptr 为 NULL,则表示该参数无效,或不使用该参数。

【返回值】返回转换后的浮点型数;若不能转换或字符串为空,则返回 0.0。

使用 atof( str ) 与使用 strtod(str, NULL) 结果相同。

一般应用方法为:
char str[]="123.45";
double d=atof(str);
printf("%.2lf", d ); //输出123.45

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-23
atof() 将字符串转换为双精度浮点型值
atoi() 将字符串转换为整型值
atol() 将字符串转换为长整型值
strtod() 将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字
strtol() 将字符串转换为长整值,并报告不能被转换的所有剩余数字
strtoul() 将字符串转换为无符号长整型值,并报告不能被转换的所有剩余数字本回答被网友采纳
第2个回答  2013-04-23
atof();
第3个回答  2013-04-23
atof();