C/C++经典算法精华整理(4)-位字段输出二进制数据
2015-08-05 21:03
253 查看
位字段可以把二进制数据处理为char进行简洁的处理
typedef struct
{
unsigned char ch1:1;
unsigned char ch2:1;
unsigned char ch3:1;
unsigned char ch4:1;
unsigned char ch5:1;
unsigned char ch6:1;
unsigned char ch7:1;
unsigned char ch8:1;
}bit;
void main()
{
printf("%d", sizeof(bit));//位字段的方式输出整数的二进制码
int num;
scanf("%d", &num);
bit *p = #
for (int i = 3; i >= 0;i--)
{
printf("%d%d%d%d %d%d%d%d ",
p[i].ch8,
p[i].ch7,
p[i].ch6,
p[i].ch5,
p[i].ch4,
p[i].ch3,
p[i].ch2,
p[i].ch1
);
}
system("pause");
}
字节分布:变量在内存,低字节低位,倒序排列
typedef struct
{
unsigned char ch1:1;
unsigned char ch2:1;
unsigned char ch3:1;
unsigned char ch4:1;
unsigned char ch5:1;
unsigned char ch6:1;
unsigned char ch7:1;
unsigned char ch8:1;
}bit;
void main()
{
printf("%d", sizeof(bit));//位字段的方式输出整数的二进制码
int num;
scanf("%d", &num);
bit *p = #
for (int i = 3; i >= 0;i--)
{
printf("%d%d%d%d %d%d%d%d ",
p[i].ch8,
p[i].ch7,
p[i].ch6,
p[i].ch5,
p[i].ch4,
p[i].ch3,
p[i].ch2,
p[i].ch1
);
}
system("pause");
}
字节分布:变量在内存,低字节低位,倒序排列
相关文章推荐
- JAVA基础篇二(Java,C++中的面向对象)
- C/C++经典算法精华整理(2)-二分查找和插入查找
- C++ 浅谈C++中指针和引用
- C++ 成员函数的重载与覆盖与隐藏
- VS中的路径宏 vc++中OutDir、ProjectDir、SolutionDir各种路径
- C语言:创建动态单向链表,创建完成后,输出每一个节点的数据信息。
- c++之简单I/O格式控制
- 在VS2010下编写C应注意的问题(和编写C++的区别)
- C/C++语法知识精华整理(2)-栈与堆、内存四大区域、 全局变量、线程技术、位字段、函数返回值副本机制等
- C语言:使用realloc函数对malloc或者calloc动态分配的内存大小进行扩展
- C++ 虚函数实现原理
- c语言常见函数
- c++primer exercises 7.0
- 一个完整的C++类
- JAVA基础篇一(Java,C++基础语法的比较)
- C++ 中的虚继承
- c++ opencv 动态内存
- c++ opencv 动态内存
- c++ opencv 数学函数示例
- c++ opencv 数学函数示例