uint8_t * const LCDMem = (uint8_t *) &LCDM3;
此代码用于msp430fg4618培训套件,用于lcd配置。 请问任何人解释上述代码的含义吗?
允许使用array LCDMem[]
?我不知道怎么回事。
答案 0 :(得分:3)
LCDMem不是arrray,它是一个指针。此代码分配给LCDMem新地址--LCDM3,因此执行后LCDMem将指向LCDM3。不能说为LCDM3分配了多少字节,可能是数组,可能只是一个。
答案 1 :(得分:2)
运算符(type) value
称为强制转换,并实现从一种类型到另一种类型的转换。
示例中的代码将一个指针(LCDM3
的地址)强制转换为不同类型的指针。这样就可以通过LCDM3
指针访问LCDMem
的内容,就好像它是一个连续的字节数组(8位无符号整数)。
例如,LDCM3
可以是结构对象,也可以是结构数组的第一个元素。上面的转换将允许人们读取和写入底层对象的各个字节。