摘要: 这是一篇介绍C语言中的函数调用是如何用实现的文章。写给那些对C语言各种行为的底层实现感兴趣人的入门级文章。如果你是C语言或者汇编、底层技术的老鸟或是对这个问题不感兴趣,那么这篇文章只会耽误您的时间,您大可不必阅读他。当然如果前辈们愿意为我指出不足,我将十分感谢您的指导,并对耽误您宝贵的时间致歉。好了,废话少说!要研究这个问题,让我们先打开VC++吧。最好是6.0的,:-P。(什么你没有VC++,倒!....赶快装一个!@#$,要快!) 首先,让我们在VC++里建立一个Win32 Console Application项目,并建立主文件fun.c。并输入以下内容。int fun(int a, i 阅读全文
posted @ 2010-10-19 21:37 Avril 阅读(1265) 评论(0) 推荐(0) 编辑
摘要: 转自:http://blog.csdn.net/tiantangniao232/archive/2007/10/23/1838709.aspx先看一小段程序: #include<iostream>usingnamespacestd;intnG=1;voidFun(){staticgg=2; int local=gg;}intmain(){ ----------------1staticinta=3;intb=nG;intc=a;Fun();staticoo=4;c=oo;return0;} 我们所关心的是这些变量如 nG gg a 等等在内存中的分布如何?它们都紧挨着放在一块?还是 阅读全文
posted @ 2010-10-19 21:22 Avril 阅读(1183) 评论(0) 推荐(0) 编辑
摘要: 当你涉及到C/C++的核心编程的时候,你会无止境地与内存管理打交道.这些往往会使人受尽折磨.所以如果你想深入C/C++编程,你必须静下心来,好好苦一番.现在我们将讨论C/C++里我认为哪一本书都没有完全说清楚,也是涉及概念细节最多,语言中最难的技术之一的动态内存的传递.并且在软件开发中很多专业人员并不能写出相关的合格的代码.【引入】 看下面的例子,这是我们在编写库函数或者项目内的共同函数经常希望的.void MyFunc(char *pReturn, size_t size){………pReturn = (char *)malloc(sizeof(char) * num);………}我们可以很明显 阅读全文
posted @ 2010-10-19 21:09 Avril 阅读(365) 评论(0) 推荐(0) 编辑