求大神解释:sizeof(联合体)

union{
    int a;
    char b[5];
    int *c;
}UN;

printf("%d\n",sizeof(UN));

程序跑了一下,输出结果为  8,
为啥不是 5 呢?#笔试题目#
全部评论
64位平台的指针大小是  8 字节, int 也是 8 字节
点赞 回复 分享
发布于 2019-09-05 22:15
你可以看一下 sizeof(int *), 这个联合体中最长的元素
点赞 回复 分享
发布于 2019-09-05 22:06
内存对齐
点赞 回复 分享
发布于 2019-09-05 21:48
点赞 回复 分享
发布于 2019-09-05 22:35
内存对齐
点赞 回复 分享
发布于 2019-09-05 22:30

相关推荐

2025-12-30 16:42
同济大学 C++
仁狂躁使者:哎呀,不用担心,我当时配环境配了两天,项目捋不清就问问导师能不能用ai,慢慢就清了,会好起来的
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务