C/C++函数参数声明解析:int fun() 与 int fun(void) 的差异揭秘

作者:微信公众号:【架构师老卢】
11-30 8:0
325

概述:在C和C++中,int fun()和int fun(void)的区别在于函数参数的声明方式。前者默认允许任意参数,而后者明确表示没有参数。通过清晰的实例源代码,详细解释了它们在函数声明和调用中的不同之处。

在C和C++中,int fun()int fun(void)的区别在于函数的参数声明方式。以下是对它们的详细描述,包括方法、步骤和相应的示例源代码。

int fun()int fun(void) 的区别:

1. int fun()

  • 方法: 函数未指定参数时,编译器默认允许传递任意个数和类型的参数。

  • 步骤: 函数声明时未明确指定参数,但允许调用时传递任意参数。

#include <iostream>

int fun() {
    std::cout << "Function with unspecified parameters." << std::endl;
    return 0;
}

int main() {
    fun(); // 可以传递任意参数
    return 0;
}

2. int fun(void)

  • 方法: 函数明确声明没有参数,调用时不能传递任何参数。

  • 步骤: 函数声明时使用 (void) 表示没有参数,调用时不允许传递参数。

#include <iostream>

int fun(void) {
    std::cout << "Function with no parameters." << std::endl;
    return 0;
}

int main() {
    fun(); // 不允许传递任何参数
    return 0;
}

这两个示例清晰地演示了函数声明时参数声明的不同之处,一个允许任意参数,另一个明确指定没有参数。

阅读排行