C:函数 注意点

Posted wbyixx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C:函数 注意点相关的知识,希望对你有一定的参考价值。

形参

在定义函数时指定的形参,在未出现函数调用时,它们并不占内存中的存储单元,因此称它们是形式参数或虚拟参数,简称形参,表示它们并不是实际存在的数据,所以,形参里的变量不能赋值。
C不像C++里一样可以设置函数参数的默认值

void max(int a = 10, int b = 20) // error, 形参不能赋值

返回值的类型

如果函数返回的类型和return语句中表达式的值不一致,则以函数返回类型为准,即函数返回类型决定返回值的类型。对数值型数据,可以自动进行类型转换。

double max() // 函数的返回值为double类型
{
    int a = 10;
    return a;// 返回值a为int类型,它会转为double类型再返回
}

注意:如果函数返回的类型和return语句中表达式的值不一致,而它又无法自动进行类型转换,程序则会报错。

函数的声明

如果使用用户自己定义的函数,而该函数与调用它的函数(即主调函数)不在同一文件中,或者函数定义的位置在主调函数之后,则必须在调用此函数之前对被调用的函数作声明。

所谓函数声明,就是在函数尚在未定义的情况下,事先将该函数的有关信息通知编译系统,相当于告诉编译器,函数在后面定义,以便使编译能正常进行。

注意:一个函数只能被定义一次,但可以声明多次。

函数声明的时候,参数列表可以只写参数类型,而不用写函数定义时的参数名称

函数定义与声明的区别

1)定义是指对函数功能的确立,包括指定函数名、函数类型、形参及其类型、函数体等,它是一个完整的、独立的函数单位。

2)声明的作用则是把函数的名字、函数类型以及形参的个数、类型和顺序(注意,不包括函数体)通知编译系统,以便在对包含函数调用的语句进行编译时,据此对其进行对照检查(例如函数名是否正确,实参与形参的类型和个数是否一致)。

以上是关于C:函数 注意点的主要内容,如果未能解决你的问题,请参考以下文章

Vue箭头函数

如何有条件地将 C 代码片段编译到我的 Perl 模块?

函数指针的转换 & C的注意点

C语言中全局数组的注意点

如何优化C ++代码的以下片段 - 卷中的零交叉

C语言编程学习:使用函数必须知道的3点注意事项