如何用C++将数字“1”转换成字符“1”

2024-11-09 00:14:03
推荐回答(5个)
回答(1):

中的函数是拆拦饥旅返itoa。功能:把一整数转换为字符串。

char *itoa(int value, char *string, int radix);
  int value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等
  头文件:
itoa操作使用程衡庆序例:
  #include
  #include
  int main()
  {
  int number = 123456;
  char string[25];
  itoa(number, string, 10);
  printf("integer = %d string = %s\n", number, string);
  return 0;
  }

回答(2):

#include
int main()
{
char str[100]; // 声明字符数组
char str1[100];
memset(str,0,100); // 初始化数组内容全部为0,
memset(str1,0,100); // 同烂凳渣上
int a = 12345;
int c = 0;
int i;
while(1) {
// 模10得到最粗梁低位的数值,例如12345%10得到5
// 5 + 字符 '0' 得到字符饥悄 '5' ,放入数组
str[c] = (a % 10) + '0'; // 模10得到最低位,+‘0’变成字符
c++; // 数组下标+1,下一个字符放入下一位置
// 算出最低位后去掉,准备计算下一位
// 如 12345 / 10 得到 1234,然后循环继续处理
a = a / 10; // 除以10去掉已求出的最后低位,再循环计算
// 如果除以10后得到0,证明全部数位都处理了,退出循环
if (a == 0) {
break;
}
}
// 上面循环结束后,str得到的是 "54321"的倒序
// 所以循环处理将12345放入另外一个数组
for(i = 0, c= c-1 ; c >= 0; i++,c--) {
str1[i] = str[c];
}

printf("%s\n",str1);
return 0;
}

回答(3):

根据ASCII码来设计一个函数
char f(int a)
{ return a+48;}

回答(4):

int a=1;
char c=1+'0';

回答(5):

char c;
c = 1+48;