C语言
文章平均质量分 77
@Agony
星空不問趕路人
歲月不負有心人
展开
-
内存地址对齐
内存地址对齐,是一种在计算机内存中排列数据、访问数据的一种方式,包含了两种相互独立又相互关联的部分:基本数据对齐和结构体数据对齐。当今的计算机在计算机内存中读写数据时都是按字(word)大小块来进行操作的(在32位系统中,数据总线宽度为32,每次能读取4字节,地址总线宽度为32,因此最大的寻址空间为2^32=4GB,但是最低2位A[0],A[1]是不用于寻址,A[2-31]才能存储器相连,因此只能转载 2013-10-14 20:18:18 · 879 阅读 · 0 评论 -
C语言回调函数的学习
在说明回调函数之前,有必要先说明一下指向函数的指针。一个函数在编译时被分配给一个入口地址,这个函数的入口地址就成为函数的指针。可以用一个指针变量指向该函数,然后通过该指针变量调用此函数。先通过一个例子来了解以下指向函数的指针的用法: #include int max(int x,int y) { int z; if(x>y) z = x; else z= y; return原创 2013-10-19 19:02:17 · 783 阅读 · 0 评论 -
C语言:内存字节对齐详解
一、什么是对齐,以及为什么要对齐: 1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 2. 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只转载 2013-10-22 20:19:16 · 835 阅读 · 0 评论 -
对《C语言:内存字节对齐详解——struct 和 union 》的理解
本文是对先前转载的一篇C语言:内存字节对齐详解http://blog.csdn.net/crystaldestiny/article/details/12953199的学习和理解,主要以一个例子来分析,首先还是重新提一下理解这个例子的必备知识: 对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,其自身对齐值为4,double类型,其自身对齐值为8,单位字原创 2013-10-22 21:32:59 · 2025 阅读 · 0 评论