strtod是C语言及C++中的重要函数,功能是将字符串转换成浮点数,表头文件是#include <stdlib.h>,相关函数有atoi,atol,strtod,strtol。
strtod是C语言及C++中的重要函数,功能是将字符串转换成浮点数,表头文件是#include <stdlib.h>,相关函数有atoi,atol,strtod,strtol。
strtod(将字符串转换成浮点数)
atoi,atol,strtod,strtol,strtoul
#include <stdlib.h>
double strtod(const char *nptr,char **endptr);
strtod()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,到出现非数字或字符串结束时('0')才结束转换,并将结果返回。若endptr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由endptr传回。参数nptr字符串可包含正负号、小数点或E(e)来表示指数部分。如123.456或123e-2。
返回转换后的浮点型数。
参考atof()。
#include<stdlib.h>#include<stdio.h>void main(){ char *endptr; char a = "12345.6789"; char b = "1234.567qwer"; char c = "-232.23e4"; printf( "a=%lfn", strtod(a,NULL) ); printf( "b=%lfn", strtod(b,&endptr) ); printf( "endptr=%sn", endptr ); printf( "c=%lfn", strtod(c,NULL) );}执行:
a=12345.678900b=1234.567000endptr=qwerc=-2322300.000000
linux c function()中关于strtod的范例有误
扩展阅读中关于strtod的范例有误。