int
类型变量,char*
类型变量,int a=xxxx;
char *b = (char *)&a;
相当于将a得地址转成char*类型
你可以这样:
char tmp[200];
int test_int_number=123;
sprintf(tmp,"%d",test_int_number);
这样tmp这个char * 内容就是 "123"
是否这样的功能:
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int i;
char buffer[33], *p;
printf ("Enter a number: ");
scanf ("%d",&i); //输入整数i
p = itoa(i,buffer,10); //将i转化为10进制数,存到buffer中
printf ("decimal: %s\n",buffer); //输出打印buffer
p = itoa(i,buffer,16); //将i转化为16进制数,存到buffer中
printf ("hexadecimal: %s\n", p);//输出打印buffer
p = itoa(i,buffer,2); //将i转化为2进制数,存到buffer中
printf ("binary: %s\n",buffer);//输出打印buffer
return 0;
}
很简单,定义一个宏定义如下:
#define tostr(x) #x
使用的时候tostr(123)就变成了“123”