gpt4 book ai didi

c++ - 如何将 bool 值类型转换为 C 中的位字段

转载 作者:行者123 更新时间:2023-11-30 04:07:54 25 4
gpt4 key购买 nike

我正在使用 cpp 对 AVR 微 Controller 进行编程。
我的问题是:

  • 我的位域结构有 2 个成员,每个成员 1 位。
  • bool 变量的简单结构。

将 bool 结构成员的值传递给位域成员时,是否需要将 bool 变量类型转换为位域成员?
这种转换是否会导致警告,因为两者都是 1 位变量?

最佳答案

假设您的两个 bool 值是 workIsFinishedcustomerIsInsane,等效的位字段是 doneWorkingmadUser .

您可以简单地执行以下操作:

doneWorking = workIsFinished ? 1 : 0;
madUser = customerIsInsane ? 1 : 0;

无需担心类型转换或任何其他东西。任何称职的编译器都能够非常彻底地优化它。

关于c++ - 如何将 bool 值类型转换为 C 中的位字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22144678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com