#include<stdio.h>
#include<assert.h>
#include<string.h>
//123====>“1 2 3” 将数字转化为字符串
char *my_itoa(char *str,int num)//局部变量,出了作用域释放
{
int i=0;
while(num!=0)
{
str[i]=num%10+'0';//得到字符串“3 2 1”
num=num/10;//num == 0
i++;//i == 3
}
str[i]='\0';//str[3]
i--;
for(int j=0;j<i;j++,i--)
{
char ch=str[j];//0号下标的元素赋给ch
str[j]=str[i];//2号下标的元素赋给0号下标==》str【】==121
str[i]=ch;//把3赋给2号下标
}
return str;
}
int main()
{
char str[5]="";
int num = 123;
printf("%s\n",my_itoa(str,num));//打印字符串
getchar();
return 0;
}
答案:123