Ofi*_*fir 85
C中的char已经是一个数字(字符的ASCII码),不需要转换.
如果要将数字转换为相应的字符,只需添加"0"即可:
c = i +'0';
Run Code Online (Sandbox Code Playgroud)
'0'是ASCll表中的一个字符.
rat*_*tty 25
您可以尝试atoi()库函数.sscanf()和sprintf()也会有所帮助.
这是一个显示将整数转换为字符串的小例子:
main()
{
int i = 247593;
char str[10];
sprintf(str, "%d", i);
// Now str contains the integer as characters
}
Run Code Online (Sandbox Code Playgroud)
这是另一个例子
#include <stdio.h>
int main(void)
{
char text[] = "StringX";
int digit;
for (digit = 0; digit < 10; ++digit)
{
text[6] = digit + '0';
puts(text);
}
return 0;
}
/* my output
String0
String1
String2
String3
String4
String5
String6
String7
String8
String9
*/
Run Code Online (Sandbox Code Playgroud)
Ama*_*osh 11
只需将其赋值int
给char
变量即可.
int i = 65;
char c = i;
printf("%c", c); //prints A
Run Code Online (Sandbox Code Playgroud)
要将整数转换为char,只有0到9会被转换为0s,因为ascii值为48,所以我们必须添加其值才能转换成所需的字符,因此
int i=5;
char c = i+'0';
Run Code Online (Sandbox Code Playgroud)
小智 5
要将int转换为char,请使用:
int a=8;
char c=a+'0';
printf("%c",c); //prints 8
Run Code Online (Sandbox Code Playgroud)
要将char转换为int,请使用:
char c='5';
int a=c-'0';
printf("%d",a); //prints 5
Run Code Online (Sandbox Code Playgroud)