使用库函数将字符串和数字互换

来源:互联网 发布:compareto方法比较数组 编辑:程序博客网 时间:2024/05/20 08:41

一:数字转换为字符串

(1)itoa():将整型值转换为字符串

(2)ltoa():将长整型值转换为字符串

(3)ultoa():将无符号长整型值转换为字符串

(4)gcvt():将浮点型数转换为字符串,取四舍五入

(5)ecvt():将双精度浮点型值转换为字符串

(6)fcvt():以指定位数为转换精度,其余同ecvt()

还可以使用sprintf系列函数把数字转换成字符串,这种方式的速度比itoa()系列函数的速度慢。下面是如何使用itoa()函数和gcvt()函数的例子:

#include <stdio.h>#include <stdlib.h>int main(){int num_int = 435 ;double num_double = 435.10f ;char str_int[30] ;char str_double[30] ;itoa(num_int,str_int,10) ;gcvt(num_double,8,str_double) ;printf("str_int:%s\n",str_int) ;printf("str_double:%s\n",str_double) ;return 0 ;}
输出的结果为:str_int:35

                            str_double:435.10001

代码第11行中的参数10表示按十进制类型进行转换,转换后的结果为“435”,如果是二进制类型进行转换,结果则为:“1101110011”

代码第12行中的参数8表示精确位数,这里得到的结果是“435.10001”


二:字符串转换为数字

(1)atof():将字符串转换为双精度浮点型值

(2)atoi():将字符串转换为整型值

(3)atol():将字符串转换为长整型值

(4)strtod():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字

(5)strtol():将字符串转换为长整型值,并报告不能被转换的所有剩余数字

(6)strtoul():将字符串转换为无符号长整型值,并报告不能被转换的所有剩余数字

下面是如何使用atoi()函数和atof()函数的例子

#include <stdio.h>#include <stdlib.h>int main(){int num_int;double num_double;char str_int[30] = "435" ;char str_double[30] = "436.55" ;num_int = atoi(str_int) ;num_double = atof(str_double) ;printf("num_int:%d\n",num_int) ;printf("num_double:%lf\n",num_double) ;return 0 ;}

最后的输出结果为:num_int:435

                                    num_double:436.550000

0 0
原创粉丝点击