表达式(类型)(值)的表达式是什么意思?

时间:2017-10-30 12:25:15

标签: c++ variables casting arduino

我有这一行:

lsb = (char) (intNumber & 0xff);

我很困惑为什么它写得像

name = (type) (value)

它究竟意味着什么,或者定义这样的变量的目的是什么?

3 个答案:

答案 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,以便使变量适合左侧。