int a[]={1,2,3};
转成
char ss="123";
这样怎么转换?
C语言的char代表一个字符呀,不是字符串,所以
char ss = "123"
是语法错误的。如果是将int类型转成char*,则可以通过循环来转化:
#include<stdio.h>
int main(){
int n = 3;//数组长度
int a[] = {1,2,3};//测试数组
char *str = new char[n];
for(int i=0;i<n;i++){
str[i] = a[i] + '0';
}
printf("%s",str);
delete []str;
return 0;
}
循环拼接一下
你这不仅是数据类型不同,数据本身也完全不是一回事,没法转换
遍历整形数组,然后依次转为字符串拷贝放入字符串对象中啊
供参考:
#include <stdio.h>
int main()
{
int a[] = { 1,2,3 }, i, k, len;
char ss[256];
len = sizeof(a) / sizeof(a[0]);
for (i = 0, k = 0; i < len; i++)
{
ss[k++] = a[i] + '0';
}
ss[k] = '\0';
puts(ss);
return 0;
}