2012年5月28日

摘要: 一个程序咋爱内存占用的存储空间可以分为:程序区:用来存放可执行程序的程序代码的。静态存储区:静态变量,在程序开始执行时分配,在执行过程中是固定的,程序执行完后释放空间。动态存储区:动态变量和形参以及函数调用时的现场保护程序和返回地址等。auto变量(动态变量):C++编译器默认局部变量为自动变量。不需要auto关键字说明。若没有明确赋值,其初值是不确定的。int fun(int n){ auto int a; int b = 20;}static变量:静态变量static int x;//静态全局变量int fun(int n){ static int a;//静态局部变量,仍保留上一次函数调 阅读全文
posted @ 2012-05-28 21:26 Buttonwood 阅读(260) 评论(0) 推荐(0)
 
摘要: 函数的递归调用内联函数:(适用于比较短小,功能简单,经常调用的函数)。该机制将函数体的代码直接插入到函数调用处,将函数调用的方式改为顺序执行的插入的程序代码,以此来节省调用函数的时间开销。以空间(存储)换时间的方式。inline float max(float x,float y){ return (x>y?x:y);}1:除函数体内还有循环,switch和复杂嵌套的if语句外,所有的函数都可以定义为内联函数;2:内联函数也是定义在前,调用在后,形参与实参要一一对应;3:说明内联函数时,只是请求编译器调用时作为内联函数的扩展来实现,而不是命令;4:内联函数时一种空间换取时间的方法,需要取 阅读全文
posted @ 2012-05-28 20:52 Buttonwood 阅读(203) 评论(0) 推荐(0)
 
摘要: C++ 函数间的参数传递:传值,引用和地址void swap(int a, int b){ int t; t=a; a=b; b=t;}void main{ int a=10, b=20; cout<<"Before:a="<<a<<"\t"<<"b="<<b<<"\n"; swap(a,b); cout<<"After:a="<<a<<"\t"<<&quo 阅读全文
posted @ 2012-05-28 20:37 Buttonwood 阅读(346) 评论(0) 推荐(0)