大佬教程收集整理的这篇文章主要介绍了C中的位域内存管理,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
#include <stdio.h> int main() { int a; typedef struct { int b7 : 1; int b6 : 1; int b5 : 1; int b4 : 1; int b3 : 1; int b2 : 1; int b1 : 1; int b0 : 1; } byte; byte ab0 = {0,1}; a = *(int*)&ab0; printf("ab0 is %x \n",a); byte ab1 = {0,1,0}; a = *(int*)&ab1; printf("ab1 is %x \n",a); byte ab2 = {0,0}; a = *(int*)&ab2; printf("ab2 is %x \n",a); byte ab3 = {0,0}; a = *(int*)&ab3; printf("ab3 is %x \n",a); byte ab4 = {0,0}; a = *(int*)&ab4; printf("ab4 is %x \n",a); byte ab5 = {0,0}; a = *(int*)&ab5; printf("ab5 is %x \n",a); byte ab6 = {0,0}; a = *(int*)&ab6; printf("ab6 is %x \n",a); byte ab7 = {1,0}; a = *(int*)&ab7; printf("ab7 is %x \n",a); return 0; }
编译并运行
gcc -Wall test.c ./a.out ab0 is 80 ab1 is 40 ab2 is 20 ab3 is 10 ab4 is 8 ab5 is 4 ab6 is 2 ab7 is 1
我在线运行代码时输出相同
http://codepad.org/ntqyuixp
预期产出:
根据我的理解输出应该是
ab0 is 1 ab1 is 2 ab2 is 4 ab3 is 8 ab4 is 10 ab5 is 20 ab6 is 40 ab7 is 80
以上是大佬教程为你收集整理的C中的位域内存管理全部内容,希望文章能够帮你解决C中的位域内存管理所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。