本文共 1124 字,大约阅读时间需要 3 分钟。
atol、atoi、strtol类似,最后的l代表长整型,i代表intatol(将字符串转换成长整型数)相关函数 atof,atoi,strtod,strtol,strtoul表头文件 #include<stdlib.h>定义函数 long atol(const char *nptr);函数说明 atol()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('/0')才结束转换,并将结果返回。返回值 返回转换后的长整型数。附加说明 atol()与使用strtol(nptr,(char**)NULL,10);结果相同。范例 /*将字符串a与字符串b转换成数字后相加*/#include<stdlib.h>main(){ char a[]=”1000000000”;char b[]=” 234567890”;long c;c=atol(a)+atol(b);printf(“c=%d/n”,c);}运行结果: c=1234567890
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=1000000000b=512c=65535
参考:http://www.17xie.com/read-406473.html
转载地址:http://zbemb.baihongyu.com/