举报
引用: 潘涛12345 发表于 2018-8-9 06:29
typedef unsigned char BOOL; //定义BOOL类型
typedef unsigned char U8; //定义U8类型
以上两句只是实现了将unsigned char这个类型重新定义了两个新类型
举报
引用: 脑洞大赛7 发表于 2018-8-9 06:39
请问这样子为什么不会有冲突,而且将unsigned char 定义成bool不是很容易让人误解吗?
举报
引用: 潘涛12345 发表于 2018-8-9 06:51
不会冲突,因为系统遇到这个重新定义的类型就当uchar类型理解了。不是为了误解,是因为硬件本身不支持bool,而在C语言系统里支持的,所以通过这种方式让一个uchar的空间存放这个Bool类型。。为了C语言体系的完整,以及更好的移植性和可读性,你遇到这个,就当它是真正的Bool就行了。 ...
举报
更多回帖