将int转换为char

时间:2014-09-15 10:20:05

标签: c++ types primitive-types

1)

#include<stdio.h>                    
#include<conio.h>
int main()
{

    char num = 'a';
    printf("%d", num);   Answer=97
    getch();
return 0;
}   

1)当使用%d和数据类型作为char

时,如何使用char打印no

2)

#include<stdio.h>
#include<conio.h>
int main()
{

    int num = 'a';
    printf("%c", num);  Answer=a
    getch();
return 0;`

2)如何在使用%c和数据类型为int

时使用int打印char
#include<iostream>
#include<conio.h>
using namespace std;
void main()
{
int a='b';
char c=a;
int d=c;
cout<<"value is "<< a ;        Answer=98
cout<<"\nChar is "<<c;         Answer=b
cout<<"\nint d is "<<d;        Answer=98
getch();
}

3)如何在没有显式类型转换的情况下将int转换为char。如何在没有显式类型转换的情况下将int转换为char c

请解释基本原理。

2 个答案:

答案 0 :(得分:2)

在使用%c和数据类型为int

时使用int打印char
#include<stdio.h>
int main()
{
    int num = 97;
    printf("%c", num);  //Answer=a
}

答案 1 :(得分:1)

printf被声明为vadiadic函数

int printf(const char *format, ...);

char在将它们传递给可变函数时会转换为int s。 printf在内部将其转换回char

参见&#34;默认转化&#34;在http://en.cppreference.com/w/cpp/language/variadic_arguments