2016 - 2024

感恩一路有你

*p++和*++p 函数调用可以作为一个函数的形参吗?

浏览量:2422 时间:2021-03-13 03:15:37 作者:admin

函数调用可以作为一个函数的形参吗?

下面的例子:

会报错,如果把func放在main()函数前,在main()调用它之前先定义,那么就ok,why? 因为编译器发现一个不认识的函数调用,不知道该函数的返回类型,就假设为int类型,等后面编译的时候编译器看到实际的函数,它认为有两个同名的函数,一个是文件中的函数,一个是编译器假设返回int的那个

如何去避免呢:有没有办法让编译器一开始就知道函数的返回值类型呢?为了防止编译器假设函数的返回类型,你可以显式地告诉它。告诉编译器函数会返回什么类型的语句就叫函数声明。


1.声明与定义分离


函数声明包括:函数名,返回值类型,形参类型,以结束,没有函数体.

一旦声明了函数,编译器就不需要假设,完全可以先调用函数,再定义函数。

对于上面的问题,可以这样写:

如果有多个这样的玩意,我们就需要在main函数中一次次的声明,比较好的方式是可以放在头文件


2.头文件

创建头文件,func.h, 将函数声明写在此:

然后上面程序就可以在main函数中不用再函数声明了.

函数调用可以作为一个函数的形参吗?

D)函数调用可以作为一个函数的形参 返回值存在寄存器中, 没有地址, 不能作为形参.

C语言函数调用可以作为一个函数的实参是什么意思啊?

实参必须要指明数据类型,而且实参和形参的数据类型必须一致。主要原因,因为数据类型反应了数据的意义,譬如,0x3f8ccccd这个十六进制数,用int类型来描述它,它就是一个整数,用float类型来描述它则为1.1。示例代码如下。

*p++和*++p 形参占用存储单元吗 什么是形参什么是实参举例子

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。