我可以相信每次访问位字段时C编译器都会模2 ^ n吗?或者是否有任何编译器/优化,如下所示的代码不会打印出溢出?
struct { uint8_t foo:2; } G; G.foo = 3; G.foo++; if(G.foo == 0) { printf("Overflow\n"); }
先谢谢,弗洛里安
c overflow bit-fields
bit-fields ×1
c ×1
overflow ×1