【发布时间】:2014-06-12 07:55:47
【问题描述】:
在 C++ 和 C# 中完成了我的大部分开发工作后,我发现 C 中使用“void”指定空参数列表的习惯有点奇怪,但在“可信赖的来源”中看到它让我认为它是必需的.问题是为什么?
为了澄清,例如在 Visual Studio 中,我不能在启用 C 编译器开关和禁用 C++ 编译器开关的任何组合中,在编写此代码时获得编译器警告:
void foo_bar();
那么,是什么使得有必要用这个来声明它:
void foo_bar(void);
只是旧的 C 标准仍然存在,后来的 C 标准不需要吗?
【问题讨论】:
-
@Emilien, @ RaymondChen 这两者都不是骗人的,因为它没有问同样的问题。它不问“有什么区别”,而是问为什么在使用一个与另一个时没有错误。
标签: c