c语言共用体的内存分布
来源:互联网 发布:电子图书馆软件 编辑:程序博客网 时间:2024/05/16 00:58
#include<iostream>using namespace std;union{unsigned char a;unsigned int i;}u;int main(){u.i = 0xf0f1f2f3;cout<<hex<<u.i<<endl;cout<<hex<<int(u.a)<<endl;return 0;}
程序的输出结果为:
f0f1f2f3
f3
定义了共用体变量后,系统为共用体变量开辟一定的存储空间。由于共用体变量先后存放不同的类型的成员,系统开辟的共用体变量的存储单元的字节数即为最长的成员需要的字节数。
例如源码中,定义了u.i,和u.a,系统只开辟了一个int类型所占的空间,内存中数据低位存入低字节,高位字节存入高地址,而数据的地址采用它的低地址来表示。
u.i f
0
f
1
f
2
u.a f
3
- c语言共用体的内存分布
- C语言中共用体的内存
- C语言内存分布
- C语言内存分布
- C语言内存分布
- C语言程序的内存分布
- C语言:共用体
- C语言--共用体
- C语言:共用体
- C语言-共用体
- C语言共用体
- C语言:共用体
- <C语言>结构体与联合体(共用体)的地址排布问题(内存字节对齐)
- C语言变量内存分布
- C语言内存分布详解
- C语言程序内存分布
- C语言中内存分布
- C语言中的内存分布
- 矩阵求导
- 最大公约数和最小公倍数
- ACE类学习查询
- ubuntu virtualbox 安装
- android 获取音乐文件的内置专辑图片
- c语言共用体的内存分布
- 乘法与位数
- File文件对象概述
- 20130518--开源搜索引擎 zettair 安装 (0)
- boost库在工作(24)任务之四
- SQL PASS 北京2013年5月18日活动照片集
- 程序员在面试中如何占据主动?
- python list sort
- 一些笔试面试时遇到的以及自己准备的题目