关于C语言中的一些问题

来源:百度知道 编辑:UC知道 时间:2024/06/01 03:00:24
如何把int类型的变量直接转换为char类型的变量?

例如 int i=55
转换为 char k='55';

直接 k 不可能 = ‘55’,可以等于‘5’
你是想把转化成字符串吧

char k[128];

sprintf(k,"%d",i)
就可以了。
k 就是 "55"

int i=55 ;
char k=char(i);

(char)i
这是强制将i 转换成char 类型

char k='55'; 是有问题的,字符只能单引号里用单字符。两个'5' ,是字符串;如果要将int类型的55转换为字符串,应该为:
#include "stdio.h"
int main()
{
int i=55;
char str[255];
sprintf(str,"%d",i);
printf("%s\n",str);
return 0;
}

对于int到 char的转换可以直接赋值也可以用 k=(char)i来转换,但是先你说的char k='55',这个在c语言中是没有的,它的值就是‘5’一样,因为ASCII里面数字符号只有‘0’到‘9’,对应的ASCII为48到57,也就是说将int型的i转换为char后并不是55 而是7(55是7的ASCII码),55转换为字符k=‘55’是没有意义的。

你的题都有错!

数字转字符串可以用itoa()函数