1
我正在使用cpp编写AVR微控制器。
我的问题是:如何将布尔值转换为位字段c
- 我有具有2名成员中,每个1个比特的比特字段的结构。
- 布尔变量的简单结构。
将值从布尔结构成员传输到位字段成员时,是否需要将bool变量转换为位字段?
此转换是否会导致警告,因为两者都是1位变量?
我正在使用cpp编写AVR微控制器。
我的问题是:如何将布尔值转换为位字段c
将值从布尔结构成员传输到位字段成员时,是否需要将bool变量转换为位字段?
此转换是否会导致警告,因为两者都是1位变量?
假设您的两个布尔值是workIsFinished
和customerIsInsane
,并且等效位字段是doneWorking
和madUser
。
你可以简单地这样做:
doneWorking = workIsFinished ? 1 : 0;
madUser = customerIsInsane ? 1 : 0;
,而不必担心铸造或任何东西。任何值得其盐的编译器都可以对其进行非常彻底的优化。
小代码示例会有帮助 –