c语言中如何对函数进行二次定义

来源:百度知道 编辑:UC知道 时间:2024/05/26 12:24:39
例如同时定义int max(int x,int y){}和
int max(int x,int y,int z){}
还有如何同时定义返回值类型不同但名字相同的俩函数

C语言中不允许重载,
必须要取不同的函数名。

我在c++里做了一个测试,程序如下:
#include<stdio.h>
int max(int x,int y){return x+y;}
int max(int x,int y,int z){return x+y+z;}
void main()
{
printf("%d\n",max(1,2));
printf("%d",max(1,2,3));
}

如果定义别的名字相同的函数,可以把它们的参数设置成不同的,否则会出现二义性

就是重载嘛,C99标准好像是不支持的,但是要看你编译器了,如果GCC新版本应该是支持的,如果VC98估计是不行的~
PS:
如果编译器支持,按照你那么写就行了.