c - line_c |= 064;/* 错误地设置了位 2,4 和 5 */.. Misra C 指南。这是怎么发生的?

标签 c bit-manipulation misra

line_c=0;
line_c |= 064; /* wrongly sets bits 2,4 and 5 */
line_c |= 64; /* rightly sets bit 6 */

Misra C 指南。这是怎么发生的?请解释一下。

最佳答案

line_c |= 064; /* wrongly sets bits 2,4 and 5 */

-> 064(前导零)表示八进制 64(基数 8),即二进制 0011 0100

line_c |= 64; /* rightly sets bit 6 */

-> 十进制 64(基数 10),转换为 0100 0000 二进制。

关于c - line_c |= 064;/* 错误地设置了位 2,4 和 5 */.. Misra C 指南。这是怎么发生的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34698408/

相关文章:

使用不同的可执行文件创建 Makefile

c# - 如果可能,从 O(1) 中的 32 位值中选择随机位

c++ - 比特流到浮点型强制

c - 带有数组初始化器的 misra 19.10

c - C中函数的写法有几种?

c - 想要将结构成员的所有属性复制到 C 中同一结构中的另一个

c - 如何将 C 代码制作成 MISRA C :2012 compliance?

c - Misra-C 2012 规则 10.1 bool 操作数用于表达式为 bool 类型的情况

c - 代码是如何工作的?

OpenGL 模板缓冲区 OR 操作?