main()
{
double a="123".45;
double b="-1234".56;
char *ptr;
int decpt,sign;
gcvt(a,5,ptr);
printf(“a value=%s\n”,ptr);
ptr="gcvt"(b,6,ptr);
printf(“b value=%s\n”,ptr);
}
执行 a value="123".45
b value="-1234".56
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()。
范例 /*将字符串 a,b,c 分别采用 10,2,16 进制转换成数字*/
#include<stdlib.h>
mian()
{
char a[]=”1000000000”;
char b[]=”1000000000”;
char c[]=”ffff”;
printf(“a=%d\n”,strtod(a,NULL,10));
printf(“b=%d\n”,strtod(b,NULL,2));
printf(“c=%d\n”,strtod(c,NULL,16));
}
执行 a="1000000000"
b="512"
c="65535"
strtol(将字符串转换成长整型数)
相关函数 atof,atoi,atol,strtod,strtoul
表头文件 #include<stdlib.h>
定义函数 long int strtol(const char *nptr,char **endptr,int base);
函数说明 strtol()会将参数 nptr 字符串根据参数 base 来转换成长整型数。参