我有这一行:
lsb = (char) (intNumber & 0xff);
我很困惑为什么它写得像
name = (type) (value)
它究竟意味着什么,或者定义这样的变量的目的是什么?
答案 0 :(得分:2)
write
intNumber与<{1}}一起和 -ed,随后将其转换为8位字符,因此它找到变量的最低有效字节。
答案 1 :(得分:0)
这是对变量进行类型转换的语法 e.g:
float x = 5.55;
int y = (int)x; // in this case, the casting would have happened implicitly
// or
printf("%d",(int)x);
// this will display 5
这里通过指定常量/变量将转换为您在第一对括号内提到的任何类型。
答案 2 :(得分:0)
该行表示您正在将右侧表达式给出的结果强制转换为char,以便使变量适合左侧。