C言語:int a = 322; printf( "%c \ n"、a); C言語は、ASCIIテーブルの範囲を超える入力文字をどのようにキャストするか

#include<stdio.h>
int main()

{
    
    
int a = 322;
char b;
b = a;
printf("%c\n",b);

return 0;
}

ここに画像の説明を挿入
結果はBであることがわかります
。322を16進数に変換すると、
ここに画像の説明を挿入
結果は142になります。しかし、charは2つの16進数のみをサポートし、最大の1が去勢される
ため、ASCIIコードテーブルと比較した42の結果はBです。
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/helloworld573/article/details/105705456