C语言函数——整数与字符(串)的相互转化

1.itoa 
在linux下没有itoa这个函数 
      原型:char  *itoa(int   value,char   *string,int   radix)    
      用法:#include   <stdlib.h>  
      功能:将整数value转换成字符串存入string, radix为转换时所用基数(保存到字符串中的数据的进制基数 2 8 10 16)
       
      说明:返回指向转换后的字符串的指针        
      举例: 
//<编程之美>中求8位整数的二进制中1的个数
#include<stdio.h>
#include<stdlib.h>
int main()
{
unsigned char a=115;
int number=0;
char string[25];
itoa(a,string,2); //转化为2进制数
printf("输出二进制:%s\n",string);
while (a!=0) {
number+=a&1;
a=a>>1; 
}
printf("1的个数为:%d\n",number);
return 0;
}

2.atoi
字符串转换到整型数:
int atoi(const char *nptr)
跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。
范例
/* 将字符串a 与字符串b转换成数字后相加*/
#include
int main()
{
char a[]=”-100”;
char b[]=”456”;
int c;
c=atoi(a)+atoi(b);
printf(c=%d\n”,c);
return 0;
}
执行
c=356
在linux下没有itoa这个函数
linux下的字符转换函数只有:
atof 字符串转换到浮点型数
atoi 字符串转换到整型数:
int atoi(const char *nptr);跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。
atol 字符串转换到长整型数
ecvt 双精度浮点型数转换到字符串转换结果中不包括十进制小数点。取四舍五入
 char *fcvt(double value, int ndigit, int *decpt, int *sign); 浮点型数转换到字符串,取四舍五入
char *gcvt(double value, int ndigit, char *buf); 浮点型数转换到字符串,取四舍五入,同时返回一个指向字符串的存储位置的指针的函数
strtod 字符串转换到浮点型数
strtol 字符串转换到长整型数
strtoul 字符串转换到无符号长整型数
toascii 将整形数转换合法的ASCII字符串
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值