C语言中的实参可以是任意类型的吗?形参可以是常量、变量或表达式吗?

如题所述

实参可以是常量、变量、表达式、函数等任意类型,形参只能是变量,在被定义的函数中,必须指定形参的类型。

形式参数(形参):定义函数名和函数体时需要用的参数,目的是用来接收调用该函数时传递的参数。

实际参数(实参):传递给被调用函数的值。

通俗的来讲,形参就像物理计算中的公式中的符号,比如Ω,A,V等,而实参就是在计算中的实际的数值。调用过程就是实现形参与实参的结合,把实参的值通过调用传递给形参,相当于把具体的值代入公式进行计算。

扩展资料:

两者的区别:

区别1

形参只能是变量,在被定义的函数中,必须指定形参的类型。

实参可以是常量、变量、表达式、函数等,

区别2

形参:没有确定的值

实参:无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。

区别3

形参变量在未出现函数调用时,并不占用内存,只在调用时才占用。调用结束后,将释放内存。

开辟内存存储数据

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
1)实参可以是任意类型的数据。
2)形参可以是变量,或缺省常量,不可以是表达式。
如果是缺省常量,只能定义在参数列表的后面。比如 int func(int a,int b=0)是正确的。
int func(int a=0,int b)是错误的。本回答被提问者采纳
相似回答