C语言中,同一个函数可以被定义多次吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中,同一个函数可以被定义多次吗?相关的知识,希望对你有一定的参考价值。
在学习的时候,书上说函数可以做为实参。看到这个表达式,让我产生了这个疑问:
a=max(x,max(y,z));
请问这是什么意思?
printf("max=%d",max(x,y));
这是因为max是有返回值,这种写法就是将函数的返回值作为函数的参数。
a=max(x,max(y,z));
其实就是等价于
y = max(y,z);
a=max(x,y);
只是简化了写法而已。 参考技术A 把max(y,z)的运算结果返回给外层函数,比如max(y,z)返回的值设定为t,既假设t=max(y,z)
然后外层函数就变为a=max(x,t);这样就好理解了 参考技术B 定义a为一个值
从内向外,
先找到x,y中大的一个
找到后,
再与x比较
选择二者大者
就是a的具体实际输出数值 参考技术C 这里是调用max函数,不是max的函数定义。
这里是将max(y,z)的返回值作为另一个max函数的第二个参数。 参考技术D 这个不叫定义,是调用。调用max两次,目的是求x,y,z三个数的最大值。追问
我知道这不是定义,我想知道在整个函数中是怎么应用的,怎么调用的。能举个例子吗,谢谢!
c语言中主函数能调用自己吗?
主函数不能调用自己。主函数实际上是有参函数,从操作系统传入变量,结束时有数值返回操作系统。
int main(int argc, char *argv[])
return 0;
其中:
int argc, char *argv[] 从操作系统传入
return 0; 返回操作系统
如果你的数据不需要同操作系统发生关系,你可以写成自定义函数,主函数里就一个语句--调用这个自定义函数。 参考技术A 不能,这样会进入死循环的追问
限制条件呢?
追答没有,不能调用自身
本回答被提问者采纳以上是关于C语言中,同一个函数可以被定义多次吗?的主要内容,如果未能解决你的问题,请参考以下文章
C语言中函数被多次调用,如何正确得将每次求的的值复制出来,求高手。
C语言中运行中,main函数被重复定义,后面的就不能运行了怎么办,下午考试,求高手