1、函数原型=函数声明。
2、函数原型构成:返回类型 函数名 (参数表); //注意,别忘了引号
3、函数原型与函数定义时,参数表有4种写法:
(1) ( )
(2) ( void ) //和第1种意思相同:无参数
(3) (参数1类型 参数1, 参数2类型 参数2, ……)
(4) (参数1类型 , 参数2类型 ……) //和第3种意思相同,函数原型中的参数名可以省略
第(4)种写法只可在函数声明时使用,而尽量不要在函数定义时使用。因为函数定义时,函数体中会用到这些参数。
如函数声明:int func( int, char); //声明时可省略参数名
函数定义:int func( int a, char c)
{cout<<a<<endl<<c<<endl;}; //定义时需要写上参数名,以便函数体中使用
4、函数声明与函数定义的4个一致:
(1) 返回类型一致
(2) 函数名一致
(3) 参数类型一致
(4) 参数个数一致
注意:不可要求参数名一致,因为根据C++规定
(1) 函数声明时可以省略参数名,而函数定义时一般都要写出参数名,所以不可能一致;
(2) 函数声明时即使写了参数名,但函数定义时可使用另外的参数名,所以不可能一致;
如函数声明 int func( int a, int b);
函数定义 int func (int m, int n) { //…… }; //正确:允许函数声明和函数定义时使用的参数名不一致
5、函数定义与函数调用的一致与不一致:
(1) 函数调用时不能写返回类型
(2) 函数调用时函数名应与定义时一致
(3) 函数调用时参数类型应与定义时一致
(4) 函数调用时参数个数应与定义时一致 (例外:当使用默认参数时,可以不一致)
6、(1) 在有返回类型的main( )中,
return 0 = return ( 0 ) , 表示返回操作系统;
return 1 = return ( 1 ) , 表示异常退出。 (这里的1可以是其它的非0值)
exit ( )中,0和1和意思与return 相同。
(2) 在void main( )中,不需要写return。
(3) 在非main函数中,return 后面跟的值是返回值;
而使用exit ( ),可以强制退出程序。带0是正常退出,带1是异常退出。
小结:return是退出当前层;exit是中止进程,退出所有层,直接回到操作系统(连程序员都绕过了)。
7、return还可以提前结束程序,而忽略其后面的语句。