C语言字节对齐(以32位系统为例)
来源:互联网 发布:淘宝网围巾专卖 编辑:程序博客网 时间:2024/05/01 02:04
转自:http://blog.sina.com.cn/s/blog_715de2f50100pgs3.html
1.
2.计算机为什么要对齐?
3.对齐的实现:
#include<stdio.h>
int main(void)
{
struct A
{
char a;
short b;
int c;
};
printf("结构体类型A在内存中所占内存为:%d字节。\n",sizeof(struct A));
return 0; }
#include<stdio.h>
int main(void)
{
struct A
{
short b;
int c;
char a;
};
printf("结构体类型A在内存中所占内存为:%d字节。\n",sizeof(struct A));
return 0; }
4.对齐算法:
1)数据类型自身的对齐值:就是基本数据类型的自身对齐值,比如char类型的自身对齐值为1字节,int类型的自身对齐值为4字节。
2)指定对齐值:预编译命令#pragma pack (value)指定的对齐值value。
3)结构体或者类的自身对齐值:其成员中自身对齐值最大的那个值,比如以上的struct A的对齐值为4。
4)数据成员、结构体和类的有效对齐值:自身对齐值和指定对齐值中较小的那个值。
- C语言字节对齐(以32位系统为例)
- C语言字节对齐(以32位系统为例)
- C语言字节对齐(以32位系统为例)
- C语言字节对齐(以32位系统为例)
- [转载]C语言字节对齐(以32位系统为例)
- c语言中的对齐问题(以32位机为例)
- C语言字节对齐
- C语言字节对齐
- c语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- C语言字节对齐
- LeetCode 238. Product of Array Except Self
- 阿拉伯数字转化人民币读法
- 检测字符串是否相等
- NSURLRequestCachePolicy—iOS缓存策略
- servlet 基础之1
- C语言字节对齐(以32位系统为例)
- C语言笔试经典--求分数数列的和
- Android:储存方式之SharePreferences
- 在没有安装终端服务的Windows 2012 R2服务器上配置远程桌面的属性
- 浅谈最小生成树的算法思路(一)Prim算法
- Maven学习 (一) 搭建Maven环境
- hdoj4907Task schedule【二分】
- Linux常用命令之三
- Smarty模版引擎