A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

#include <stdio.h>

//步骤:1.上下对齐  2.整体对齐

int main(int argc, const char * argv[]) {
    //结构体大小的计算方法
    struct student{
        int a;  // 4
        char b; // 1+4=5   +3=8
        double c;//8+8=16
        float e;//4+16=20
        short f;//2+20=22  +2 =24
    };
    struct student s;
    printf("%ld",sizeof(s));
    return 0;
}


11 个回复

倒序浏览
支持~
回复 使用道具 举报
学习学习!
回复 使用道具 举报
已收到:)
回复 使用道具 举报
这个感觉还是掌握的不太好
回复 使用道具 举报
不错,很直观!
回复 使用道具 举报
好实用哎。
回复 使用道具 举报
不错,顶一个
回复 使用道具 举报
学习了~
回复 使用道具 举报
  1. struct st1
  2. {
  3.      char a ;
  4.      int  b ;
  5.      short c ;
  6. };

  7. struct st2
  8. {
  9.      short c ;
  10.      char  a ;
  11.      int   b ;
  12. };
复制代码


如果照楼主那样算的话,为什么sizeof(st1)的值为12,  sizeof(st2) 为 8 ?
回复 使用道具 举报
顶一个,不错
回复 使用道具 举报
赞一个,总结的很好
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马