作业帮 > 综合 > 作业

C语言中,不能定义相同名称的函数么?比如

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/18 20:15:20
C语言中,不能定义相同名称的函数么?比如
1、名称相同,返回类型不同,参数相同
2、名称相同,返回类型不同,参数类型相同个数不同
3、名称相同,返回类型不同,参数相同但位置不同
4、名称相同,返回类型相同,参数类型相同个数不同
5、名称相同,返回类型相同,参数相同但位置不同
你说的这些是C++的函数重载,C++是可以的,但C语言不支持函数重载
比如:
void fun(int n) 与int fun(int n)就是名称相同,返回类型不同,参数相同
void fun(int n) 与int fun(int n,int s)就是名称相同,返回类型不同,参数类型相同个数不同
int fun(int n) 与int fun(int n,int s) 名称相同,返回类型相同,参数类型相同个数不同
所以这些在用C语言编程时都会报错,就是不行
再问: 好吧,我把文件后缀.c改为.cpp C++中的函数重载有什么优点?
再答: 恩恩,改了应该就可以了。 优点有很多,比如可以少定义新的函数名,提高程序的可读性,一名多用!等等