您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> 编程语言综合 >> 正文

C与C++ 无参函数的区别解析

作者:佚名    责任编辑:admin    更新时间:2022-06-22

在《C++ 编程思想》:“关于无参函数声明,C与C++有很大的差别。在C语言中,声明int fun1(),意味着一个可以有任意数目和类型的函数;而在C++中,指的却是一个没有参数的函数”  

下面是一个C语言的函数和C++的函数验证了这段话

复制代码 代码如下:
# include<stdio.h>

int fun1();

int main()
{
 int a = fun1(3, 4);
 printf("%dn", a);
 return 0;
}

int fun1(int a, int b)
{
 return a + b;
}


结果没有任何问题,输出结果为7,也即fun()可以声明fun(int, int)

复制代码 代码如下:
# include<iostream>
using namespace std;

int fun1();

int main()
{
 int a = fun1(3, 4);
 cout << a << endl;

 return 0;
}

int fun1(int a, int b)
{
 return a + b;
}


编译出错,“fun1”: 函数不接受 2 个参数。说明在C++中fun()不可以声明fun(int, int)