#include <iostream>
#include <cstdint>
using namespace std;
int main()
{
uint8_t isWaitLoad = 0xff;
cout << (uint16_t)isWaitLoad << " to bool is " << static_cast<bool>(isWaitLoad) << endl;
isWaitLoad = 0;
cout << (uint16_t)isWaitLoad << " to bool is " << static_cast<bool>(isWaitLoad) << endl;
isWaitLoad = 1;
cout << (uint16_t)isWaitLoad << " to bool is " << static_cast<bool>(isWaitLoad) << endl;
return 0;
}
输出:

$ ./0xff_to_bool.exe
255 to bool is 1
0 to bool is 0
1 to bool is 1
该代码片段展示了如何将uint8_t类型的变量转换为bool值。首先,isWaitLoad被初始化为0xff,然后输出其uint16_t表示及转换为bool后的值。接着,isWaitLoad分别被设置为0和1,同样进行转换并输出结果。
1万+






