C语言应用
文章平均质量分 78
Yi_bunny
这个作者很懒,什么都没留下…
展开
-
C语言内存分配的问题
C语言内存分配问题1、C中内存分为四个区 栈:用来存放函数的形参和函数内的局部变量。由编译器分配空间,在函数执行完后由编译器自动释放。 堆:用来存放由动态分配函数(如malloc)分配的空间。是由程序员自己手动分配的,并且必须由程序员使用free释放。如果忘记用free释放,会导致所分配的空间一直占着不放,导致内存泄露。全局区:用来存放全局变量和静态变量。存在于程序的整个运行期转载 2012-02-21 11:23:08 · 478 阅读 · 0 评论 -
共用体的使用实例
转自http://home.eeworld.com.cn/my/space.php?uid=139222&do=blog&id=282441、共用体的概念在编程过程中,有时需要使几种不同类型的变量存放到同一段内存单元中。例如,可以把一个整型变量,一个字符型变量,一个实型变量放在同一个地址开始的内存单元中。这样的话,不同类型的变量在内存中占据的字节数不同,但是都从转载 2012-02-19 08:48:57 · 3022 阅读 · 0 评论 -
共用体应用实例(2)
转自:http://book.51cto.com/art/201012/237940.htm【例】设count 是一个16 位的无符号整型计数器,最大计数为十六进制0xffff,要求将这个计数值以十六进制半字节的形式分解出来。对于上述实例通常采用移位的方法求解,而采用共用体结构体位域的方法不需要通过移位运算。以下,对CCS 在头文件中大量使用的共用体结构体位域进行注解。先定转载 2012-02-19 09:13:34 · 1111 阅读 · 0 评论 -
C共用体应用实例(3)
转自:http://zhidao.baidu.com/question/274459527.html1)提高存取效率 一般处理器是32位的,一次可以从内存中读取32位数据,一般分配给变量地址是4的倍数,如果你定义的结构成员横跨了32位边界,CPU要读取2次。这里就是浪费了时间。2)为了在不同处理器下兼容。 早期MIPS处理器只能读取4字节对齐的后的结构,非4倍数地址访转载 2012-02-19 09:28:46 · 1162 阅读 · 0 评论