数字(0——9)转换为char

来源:百度知道 编辑:UC知道 时间:2024/06/25 21:51:43
两个问题:
C语言中
怎样把一个数(0——9)转换成char
想实现数字 转换为字符串
例如把 123 转换为字符串 "123"

1.有什么函数吗?
2.如果自己写该函数,该怎么写?

先谢了

1,itoa函数 sprintf函数 均可满足你
2,
char *IntToStr(int nstr,char dest[])
{
int _nstr,tmp;
char *p,*q,tstr[16]={0} ;
p=dest;
q=tstr;
_nstr=nstr;
if(nstr<0)
{
_nstr=-nstr;
*p='-';
p++;
}
while(_nstr)
{
tmp=_nstr%10;
*q=(tmp+'0');
q++;
_nstr=_nstr/10;
}
*q='\0';
q--;
while((q-tstr)>=0)
{
*p++=*q--;
}
return dest;
}

最简单是调用sprintf()
char str[32];
int m=1234;
long int n=123456;
float a= 123.4567;
double b = 987.6543210987;

sprintf(str,"%d",m); // 短整型
sprintf(str,"%d",n); // 长整型
sprintf(str,"%.4f",a); // 短浮点型
sprintf(str,"%.10lf",b); // 长浮点型

#include <stdlib.h>
char *_itoa( int value, char *string, int radix );
int atoi( const char *string );

#include<stdio.h>