c语言变量声明内存分配(转)
摘要:一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 程序运行时由编译器自动分配,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。程序结束时由编译器自动释放。2、堆区(heap) — 在内存开辟另一块存储区域。一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,...
阅读全文
posted @
2009-12-17 16:18
朝阳
阅读(585)
推荐(0) 编辑
声明函数指针并实现回调 \\作者:Danny Kalev,转自http://www.vckbase.com/document/viewdoc/?id=195 有改动,等有时间了再整理一下
摘要:程序员常常需要实现回调。本文将讨论函数指针的基本原则并说明如何使用函数指针实现回调。注意这里针对的是普通的函数,不包括完全依赖于不同语法和语义规则的类成员函数(类成员指针将在另文中讨论)。函数指针变量: 在C语言中,一个函数总是占用一段连续的内存区,而函数名就是该函数所占内存区的首地址。函数名会自动退化成函数指针。我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使该指针变量指向该函数。...
阅读全文
posted @
2009-12-08 14:58
朝阳
阅读(458)
推荐(0) 编辑
浅谈C中的malloc和free\\感谢lj_860603,工作了,没时间验证了,觉得挺好的,转载了
摘要:在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以写下这篇文章作为一个对知识的总结。这篇文章之所以命名中有个“浅谈”的字眼,也就是...
阅读全文
posted @
2009-12-02 20:44
朝阳
阅读(424)
推荐(0) 编辑