c语言strtod()函数:const char *类型转换成double类型

本文详细介绍了C语言中的strtod函数,用于将字符串转换为双精度浮点数。函数会忽略前导空白,并在遇到非数字字符时停止转换。返回值为转换后的浮点数,若无法转换则返回0.0。示例代码展示了如何使用strtod进行转换,并获取终止转换的字符位置。

头文件:#include <stdlib.h>

函数原型:double strtod(const char* str, char** endptr);

参数说明:str是你要转换的字符串,endptr是第一个不能转换的字符的指针,可为NULL;

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

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

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

例一:
const char * pData;
double res;
res = strtod(pData, NULL);
printf("%.2lf\n", res);

例二:
const char * pData;
double res;
char * Data;
res = strtod(pData, &Data);
printf("%.2lf\n", res);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值