分类: C/C++
2014-10-15 09:08:51
模块化程序设计<-->语言中的模块化
面向过程是一种以过程为中心的编程思想,首先将复杂的问题分解为一个个容易解决的问题,分解
后的问题按照步骤一步步完成,函数是面向过程在c中的体现,解决问题的每一个步骤可以用函数
来实现。
声明与定义的区别:声明可以理解为预先告诉编译器实体的存在如:变量,函数……
定义明确指示编译器实体的意义。声明与定义不同。
例子中extern int g_var 是声明;而int g_var = 0;是定义。
注意声明语句的作用域
函数参数在本质上与局部变量相同,都是在栈上分配空间,函数参数的初始值时函数调用时的实参
值。函数参数的求值顺序依赖于编译器的实现。如何实现?与“顺序点”相关。
程序中存在一定的顺序点,顺序点是指执行过程中修改变量值的最晚时刻,在程序达到顺序点的时
候,之前所做的一切操作必须反映到后续的访问中。
顺序点
1.每个完整表达式结束时;
2.&&,||,?:,以及逗号表达式的每个运算对象之后;
3.函数调用中对所有实际参数的求值完成之后(进入函数体之前)。
函数缺省的认定:c语言中默认没有类型的函数参数为int
小结:
C是一种面向过程的语言,函数可理解为解决问题的步骤,函数的实参并没有固定的计算次序,顺
序点是c 中变量改变的最晚时机,函数定义时参数和返回值的缺省类型为int。