您的位置:首页 > 其它

整型与字符型转换

2016-04-07 21:04 309 查看
以下这两个函数是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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C