社区
C语言
帖子详情
谁能帮我解释一下这段程序(共用体的问题),谢谢
eternalamour
2004-09-16 01:54:51
main()
{
union
{unsigned char c;
unsigned int i[4];
}z;
z.i[0]=0x1234;
z.i[1]=0x5678;
printf("%x\n",z.c);
}
为什么运行结果是34呢?
...全文
152
11
打赏
收藏
谁能帮我解释一下这段程序(共用体的问题),谢谢
main() { union {unsigned char c; unsigned int i[4]; }z; z.i[0]=0x1234; z.i[1]=0x5678; printf("%x\n",z.c); } 为什么运行结果是34呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fanzhewen0305
2004-09-16
打赏
举报
回复
我的结果是 34 12 78 56
Squall1009
2004-09-16
打赏
举报
回复
to:Chiyer
验证过没吗?
kinglonghr
2004-09-16
打赏
举报
回复
内存地址一样 所以取出来的就是最开始的那个
星羽
2004-09-16
打赏
举报
回复
34 12 56 78
Squall1009
2004-09-16
打赏
举报
回复
union z中unsigned int数组的第一个元素的值为0x1234
0x开头表示是16进制,0开头表示8进制.
bambooeric
2004-09-16
打赏
举报
回复
z.i[0]=0x1234;
这种赋值格式是什么意思?
其中OX是代表什么?
Squall1009
2004-09-16
打赏
举报
回复
to:applebomb
是34 12 78 56
to:xujinwu77
可能你楼上的手误了
wanamaker
2004-09-16
打赏
举报
回复
z.i[0] = 0x1234;
在little-endian的机器里 排列是 0x34,0x12
在big-endian的机器里 排列是 0x12,0x34
由此可见你的机器用的cpu是little-endian的
xujinwu77
2004-09-16
打赏
举报
回复
为什么不是34 12 78 56 呢?
applebomb
2004-09-16
打赏
举报
回复
刚开始我也有点纳闷
main()
{
union
{
unsigned char c[4];
unsigned int i[4];
}z;
z.i[0]=0x1234;
z.i[1]=0x5678;
printf("c[0]=%x c[1]=%x c[2]=%x c[3]=%x\n",z.c[0],z.c[1],z.c[2],z.c[3]);
getch();
}
证明其是
34 12 56 78
排列在内存里的
所以,首先取出来的c[0]当然是0x34了
oo
2004-09-16
打赏
举报
回复
是这样的呀。
z.i[0] = 0x1234;低字节是0x34
c就是0x34了。
java
共用体
_C语言
共用体
(Union)详解及示例代码
通过前面的讲解,我们知道结构体...
共用体
有时也被称为联合或者联合体,这也是 Union 这个单词的本意。结构体和
共用体
的区别在于:结构体的各个成员会占用不同的内存,互相之间没有影响;而
共用体
的所有成员占用同一...
共用体
union详解
需要使用
共用体
数据结构 例把一个整型变量一个字符型变量一个实型变量放在同一个地址开始的内存单元中
共用体
的定义形式 union
共用体
名 成员列表 变量列表 注意区分
共用体
各成员占相同的起始地址所占内存长度等于...
共用体
union详解 return (int )c != i;
共用体
union详解 2014年07月28日 13:23:36 kobesdu 阅读数:14086更多 个人分类: C++错误 一
共用体
的概念 当需要把不同类型的变量存放到同一段内存单元或对同一段内存单元的数据按不同类型处理则 需要使用...
结构体+枚举+联合(
共用体
)
文章目录结构体+枚举+联合结构体结构体的声明结构的自引用结构体变量的定义和初始化结构体内存对齐结构体传参位段枚举枚举类型的定义枚举的优点联合(
共用体
)联合类型的定义联合的特点联合大小的计算 结构体 结构体...
共用体
unoin
需要使用
共用体
数据结构 例把一个整型变量一个字符型变量一个实型变量放在同一个地址开始的内存单元中
共用体
的定义形式 union
共用体
名 成员列表 变量列表 注意区分
共用体
各成员占相同的起始地址所占内存长度等于...
C语言
69,371
社区成员
243,081
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章