将特定的8位分配给uint8_t

问题描述 投票:0回答:2

有没有办法做类似的任务

uint8_t x = 0010 0010;

没有位移?

我正在使用c99。

我真的想使其静态,因为我没有更改此“数字”上的任何内容,因此可以节省一些代码。

c bit biginteger
2个回答
1
投票

创建一个名为binaryliterals.h之类的头文件,然后:

#define b0000_0000 ((unsigned char)0x00)
#define b0000_0001 ((unsigned char)0x01)
#define b0000_0010 ((unsigned char)0x02)
// etc...

如果您在互联网上闲逛,您可能会发现很多这样的例子。我以前在工具箱中放一个,但目前可能在一个存档硬盘中。此时,从头开始编写它的速度更快。


-2
投票

以下列方式写:

uint8_t x = 0b00100010;
© www.soinside.com 2019 - 2024. All rights reserved.