cost 237 ms
将 colors 与 C 中的位域与按位运算符混合? - Mixing colors with bitfields in C with bitwise operators?

我正在阅读关于位域的 Wikipedia 条目,看到如何使用二进制数来表示主要的 colors 并使用按位或 ( | ) 运算符组合它们。 我想检查一种颜色是否包含在另一种颜色中。 我明白为什么会这样,但是是否有按位运算或其组合可以达到我想要的结果? ...

C/C++ 中的位域:什么是保证的,什么是实现定义的? - Bit-Fields in C/C++: what is guaranteed, what is implementation-defined?

阅读https://en.cppreference.com/w/c/language/bit_field ,以下结论是否正确? 相邻的位字段之间没有填充(这在 C 标准的 6.7.2.1 中似乎有所不同)。 位字段在存储单元中的放置是实现定义的。 位域中的位 position 是实现定义的。 ( ...

Assembly x86 MASM - 从内存中提取 5 位的问题 - Assembly x86 MASM - Problem of extracting 5 bits from memory

我有一个问题要解决,但我不知道该怎么做。 我正在询问有关如何解决此问题的一般想法。 我在 ESI 中有一个内存地址。 Memory 表示某种简化的 ASCII 编码,其中 5 位,一个接一个表示一个特定的字符。 内存以五位结尾 - 00000b。 为了转换为正常的 8 位 ASCII,必须将 60 ...

我使用 memcpy 错了吗? - Am I using memcpy wrong?

我正在尝试使用 memcpy 将 unsigned int 的一部分复制到我创建的同一结构中的另一个 unsigned int。 但是我的程序只打印第一个 printf 语句,然后说: Process returned -1073741819 (0xC0000005) 我使用 memcpy 错了吗 ...

这个基于位域的结构如何计算 1. 结构的大小 2. 指针值之间的差异? - How is this bit fields based structure calculating 1. the structure's size 2. the difference between pointer values?

代码 Output: 我在期待分配给 x 的 4 个字节由于 long int 是位域化的,因此分配给它的是 33 位 -> 4 + 4 字节,但只使用了 33 位然后将 4 个字节分配给 z,并且不会占用前 8 个字节中的剩余空间,因为没有剩下 4 个完整的字节。 总共 16 个字节, ...

C++ 将 [0, 2^n) 范围内的无符号整数转换为 [-2^(n-1), 2^(n-1) ) 范围内的有符号整数 - C++ convert an unsigned int in range [0, 2^n) to signed int in range [-2^(n-1), 2^(n-1) )

一开始,我意识到我的所作所为很糟糕。 如果没有明确禁止的话,我依赖于现在(至少)未定义的行为。 它曾经有效,我认为我很聪明。 现在它没有,我正在尝试修复它。 我有 2 的正幂数(FFT bin 索引,但不重要)。 我想通过将值的后半部分包装到负范围来有效地对一组 bin 索引进行 FFT 移位。 也 ...

分隔位域中的位 - Separating bits in a bitfield

假设我有一个位域结构: 假设我已经设置了这样的位: 现在,我想将位域分成 5 和 5 两部分。 如果位当前看起来像这样1000100110 我想把它分成10001 -> 17和00110 -> 6 。 ...

2022-08-02 19:55:13   1   38    c / bit-fields  
为什么结构大小随结构中的枚举位域而变化(标准C) - Why does struct size change with enum bitfield in struct (standard C)

赏金将在 7 天后到期。 此问题的答案有资格获得+100声望赏金。 Eric Postpischil希望引起对这个问题的更多关注。 使用这个问题中提供的代码,我观察到当使用 8 位宽的枚举而不是uint8_t类型时,结构的大小会增加。 请查看以下代码示例: 代码选项 A 此结构second_el ...

将 unsigned short 分配给 unsigned char 位字段会使 STM32F1 复位 - Assigning unsigned short to an unsigned char bit field makes STM32F1 reset

所以我在不明白为什么的情况下遇到了这个问题。 我正在读取 16 位的 EEPROM 部分。 在第一次读取 EEPROM 时,所有单元都是 0xffff。 这部分内存将存储一个标志,所以基本上是 1 位。 该标志以unsigned char maxM1 :1; . 见下文 我正在使用返回 1 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM