C++怎么把int转换成char

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++怎么把int转换成char相关的知识,希望对你有一定的参考价值。

#include <iostream>
using namespace std;
int reverseDigit(int num)

int n;
n=sizeof(num);
int *i,*j;
int *s=#
i=s;j=s+n;
while(i<j)
int temp;
temp=*i;
*i=*j;
*j=temp;
i++,j--;
return num;

int main()

int num,number;
cin>>num;
number=reverseDigit(num);
cout<<number<<endl;
return 0;


我知道问题是num为int型不能用指针交换每位数的位置,但怎么把num强制转换为char呢?

int 强制转换为char 有精度损失
你说的转说,是指num对应数字转化吧。
如果是这样的话,就不是转化为char 而是转换为char * 或者说是char []
比如123 要转换成字符数组 123这样。
循环取每一位,放到数组里。
比如 int num ; char array[10];
int k=0;
do

array[k++]=num%10+'0';
num=num/10;
while(num);

这样子array就是存num的数字,

也可以用sprintf函数 。
sprintf(array,"%d",num);
这样也可以了。

你上面写的代码很乱。 比如
j=s+n;

这里j,s都是地址 ,n是整数。 这样加出来都不知道是什么东西。
参考技术A num强制转换为char :(char)(num),强制类型转换 参考技术B //指针这个东西再这个编程时代已经没什么必要存在了。。。 一般都可以用其他方式来实现

建议你用String类来做 ,很简单 ( 加上String 的头文件)
String str; //str也可以当做数组来用
getline(cin,str);

以上是关于C++怎么把int转换成char的主要内容,如果未能解决你的问题,请参考以下文章

C++中,如何讲CHAR数组转换成FLOAT型数据。

怎么把jstring转换成char

C++中如何把char*转换成string*?

C++中怎么把字符串string型的数字转换成整型int型的数字?

如何将char类型转换成int类型?

怎么把int转换为char类型