码迷,mamicode.com
首页 > 编程语言 > 详细

c语言结构体大小 sizeof(struct A)

时间:2017-06-20 11:34:36      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:c语言   nbsp   关键词   logs   return   意义   print   bsp   class   

1,数据类型自身对齐

数据类型的起始地址为其大小的整数倍

2,结构体的自身对齐

结构体的自身对齐值为其中最大的成员大小

3,指定对齐

可以使用关键词#pragma pack(1) 来指定结构体的对齐值

4,有效对齐值

有效对齐值为自身对齐值与指定对齐值中较小的一个。(即指定对齐值超过自身对齐值无意义)

 1 #include<stdio.h>
 2 struct {
 3     int a;     //单个为4
 4     char b[3]; // 单个大小为1  因为是数组总和为3 
 5     double c;  //单个为4 
 6 }size; 
 7 int main() {
 8 int v; 
 9 v=sizeof(size);
10 printf ("%d",v);  //结果为 16  为4的整数倍补齐 
11 return 0;
12 }

 

c语言结构体大小 sizeof(struct A)

标签:c语言   nbsp   关键词   logs   return   意义   print   bsp   class   

原文地址:http://www.cnblogs.com/libigdogs/p/7053392.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!