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呢?
你说的转说,是指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的主要内容,如果未能解决你的问题,请参考以下文章