整型与字符型转换

本文详细介绍了Windows系统中特有的两个字符串转换函数:atoi和itoa。atoi用于将字符串转换为整数,而itoa则负责将整数转换为指定进制的字符串形式。文章还提供了itoa函数的源码实现,帮助读者更好地理解其内部工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下这两个函数是windows特有的,引用库文件如果涉及到跨平台的话,建议使用sprintf
char str[255];
sprintf(str, "%x", 100); //将100转为16进制表示的字符串。

#include<stdlib.h>


atoi(char* str) 字符串转数字
char*itoa(int value,char*str,int radix); 数字转char *
radix 进制,如10,按10进制转
str  转换后存放的char数组

itoa 源码


char* itoa(intnum,char*str,intradix)
{/*索引表*/
char index[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
unsigned unum;/*中间变量*/
int i=0,j,k;
/*确定unum的值*/
if(radix==10&&num<0)/*十进制负数*/
{
unum=(unsigned)-num;
str[i++]='-';
}
else unum=(unsigned)num;/*其他情况*/
/*转换*/
do{
str[i++]=index[unum%(unsigned)radix];
unum/=radix;
}while(unum);
str[i]='\0';
/*逆序*/
if(str[0]=='-')k=1;/*十进制负数*/
elsek=0;
char temp;
for(j=k;j<=(i-1)/2;j++)
{
temp=str[j];
str[j]=str[i-1+k-j];
str[i-1+k-j]=temp;
}
return str;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值