函数对于一种编程语言,就像细胞对于人一样重要。一个重要的问题是--在高级语言中的函数在底层机器语言上又是怎么实现的?(当然不同的处理器可能会有多种实现方式)在这篇文章中尝试着整理了一下在x86下函数这个概念在机器上的实现过程。主要包括传参,创建局部变量,函数调用等。(英版)...
分类:
其他好文 时间:
2014-07-28 00:05:19
阅读次数:
502
C语言提供了一些内存管理函数,这些内存管理函数可以按需要动态地分配内存空间,也可把不再使用的空间释放,为有效地使用内存资源提供了手段。 动态数组,指的就是利用内存的申请和释放函数,在程序的运行过程中,根据实际需要指定数组的大小。其本质就是一个指向数组的指针变量。 主要用到的内存管理函数是:mallo...
分类:
其他好文 时间:
2014-07-26 16:59:31
阅读次数:
245
浅谈函数应用函数存在的意义:把main函数中复杂的逻辑进行拆分,由一个一个单独的函数来处理一个单独的模块,main函数只是起到宏观调控作用我们可以自己编写一些函数,实现某些功能,把函数的声明放在.h文件里,把函数的定义即实现放在.m文件里,然后在main.m文件里的main函数里调用实..
分类:
其他好文 时间:
2014-07-25 11:30:31
阅读次数:
198
函数实现原理如下:在当前序列中,从尾端往前寻找两个相邻元素,前一个记为*i,后一个记为*ii,并且满足*i =0;i--) { if(num[i]=0;i--) { if(num[i]>num[p]) break; ...
分类:
其他好文 时间:
2014-07-23 16:14:51
阅读次数:
171
代码: 1 #include 2 3 void swap(int x,int y) 4 { 5 int temp; 6 7 temp = x; 8 x = y; 9 y = temp;10 printf("In swap: x = %d,y = ...
分类:
编程语言 时间:
2014-07-20 22:14:56
阅读次数:
255
已知strcpy函数的原型是:char * strcpy(char * strDest,const char * strSrc);1.不调用库函数,实现strcpy函数。2.解释为什么要返回char *。解说:1.strcpy的实现代码 char * strcpy(char * str...
分类:
编程语言 时间:
2014-07-19 11:25:46
阅读次数:
293
1.简述用虚函数实现的多态的原理: 编译器发现一个类中有虚函数的时候,便会立即为此类生成虚函数表vtable.虚函数表的各 表项为指向对应虚函数的指针.编译器还会在此类中隐含插入一个指针vptr(对vc编译器来 说,它插在类的第一个位置上)指向虚函数表.调用此类的构造函数的时候,在类的构造函数 中,...
分类:
编程语言 时间:
2014-07-19 09:24:27
阅读次数:
242
块函数的形式是这样的:{func} .. {/func}。换句话说,它们被封闭在一个模板区域内,然后对该区域的内容进行操作。默认地,你的函数实现会被Smarty调用两次:一次是在开始标签,另一次是在闭合标签。块函数在模板中使用和函数还是有一些区别的,但自定义添加的方式差距不大,也可以使用两种方式进行...
分类:
其他好文 时间:
2014-07-18 00:31:37
阅读次数:
209
描述:通过将函数作为参数,使得功能类似的函数实现可以整合到同一个函数。Before 1 def getAdd(lst): 2 result = 0 3 for item in lst: 4 result += item 5 return result 6 7...
分类:
编程语言 时间:
2014-07-17 23:34:29
阅读次数:
374
1.运算符重载定义:
C++中预定义的运算符的操作对象只能是基本数据类型。但实际上,对于许多用户自定义类型(例如类),也需要类似的运算操作。这时就必须在C++中重新定义这些运算符,赋予已有运算符新的功能,使它能够用于特定类型执行特定的操作。运算符重载的实质是函数重载,它提供了C++的可扩展性,也是C++最吸引人的特性之一。
运算符重载是通过创建运算符函数实现的,运算符函数定义了重载的运...
分类:
其他好文 时间:
2014-07-17 20:33:17
阅读次数:
287