宏PATTERN_BITMAP的参数个数十几个
时间: 2023-08-11 20:04:35 浏览: 80
Bitmap_transform.rar_Bitmap Transform_bitmap
非常抱歉,我在回答问题时出现了错误。实际上,宏PATTERN_BITMAP的参数只有三个,分别是pattern_array、width和col。其中,pattern_array表示位图的起始地址,width表示位图的宽度(以字节为单位),col表示要获取的位在位图中的列数。
正确的宏定义如下:
```
#define PATTERN_BITMAP(pattern_array, width, col) \
(((*((uint8_t *)(pattern_array) + (col) / 8)) & (1 << (7 - ((col) % 8)))) >> (7 - ((col) % 8)))
```
这个宏的实现比较简单,根据指定的列数col,通过简单的位运算操作获取该列对应的位值,并返回该位值。注意,由于col是以位为单位计算的,因此在获取字节的偏移量时,需要将其除以8,以得到正确的字节偏移量。
阅读全文