C中强制转换和赋值int、char之间的差异

C中强制转换和赋值int、char之间的差异,c,C,有人能解释一下整数到字符的显式转换之间的区别吗 int i = 100; char c2 = (char)i; 将整型赋值给字符 char i = 100; 非常感谢没有行为差异 但是,某些编译器可能配置为警告隐式“缩小”转换。这样的代码可能会引发警告: int i = ...; char c = i; // Implicit conversion 一个更有趣的问题,如果你使用128或更大的值,顺便说一句。

有人能解释一下整数到字符的显式转换之间的区别吗

int i = 100;
char c2 = (char)i;
将整型赋值给字符

char i = 100;

非常感谢

没有行为差异

但是,某些编译器可能配置为警告隐式“缩小”转换。这样的代码可能会引发警告:

int i = ...;

char c = i;  // Implicit conversion

一个更有趣的问题,如果你使用128或更大的值,顺便说一句。