为了账号安全,请及时绑定邮箱和手机立即绑定

我不明白printf("%d\n",sizeof(struct date));语句的结果为啥是12?

我不明白printf("%d\n",sizeof(struct date));语句的结果为啥是12?

宝慕林4294392 2022-05-12 15:11:59
#include<stdio.h>main(){struct date{int year,month,day;}today;union {long i;int k;char c;}mix;printf("%d\n",sizeof(struct date));printf("%d\n",sizeof(mix));}上面的程序的结果12,4,我不明白printf("%d\n",sizeof(struct date));语句的结果为啥是12,我认为是6,因为我觉得int类型占2个字节,三个就该占6个还望网友快给小弟解释一下哈!
查看完整描述

2 回答

?
qq_遁去的一_1

TA贡献1725条经验 获得超8个赞

不同的编辑器会使相同类型的变量占用的空间不同。你如果在VC下运行那么就是12,因为vc下int是占用4个字节的,tc下占用2个字节。

查看完整回答
反对 回复 2022-05-16
?
当年话下

TA贡献1890条经验 获得超9个赞

是12 你用的系统是32位的啊 int型的就是4个字节

查看完整回答
反对 回复 2022-05-16
  • 2 回答
  • 0 关注
  • 660 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号