gpt4 book ai didi

c - 在 C 中使用 "void"

转载 作者:太空狗 更新时间:2023-10-29 16:43:21 25 4
gpt4 key购买 nike

我对为什么我们需要将 void 传递给 C 函数感到困惑:

int f(void) { return 0; }

对比

int f() { return 0; }

什么是正确的做法,为什么?

最佳答案

在 C 中,int f() 是一种旧式声明。它表示 f 需要固定但未指定数量和类型的参数。例如,给定 int f() { return 0; },编译器不会提示 f(42)f("hello, world")(尽管这种调用的行为是未定义)。

int f(void) 明确表示 f 不接受任何参数。

(C++ 有不同的规则;Stroustrup 并不关心与旧 C 代码的向后兼容性。)

关于c - 在 C 中使用 "void",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7324860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com