可能重复: C中有多少种类型的写作函数?
我看到一个用C语言编写的程序,它的main定义如下
main(ac, av) int ac; char **av;
{
...
}而不是
int main(int argc, char **argc)
{
...
}我从未见过像第一段代码那样的C语法。它是什么,我在哪里可以读到它?
发布于 2012-06-03 13:05:30
第一种是在函数原型成为通用/标准代码之前的一种老式的、预先的ANSI、C函数头。
常见的格式如下:
main(ac, av)
int ac;
char **av;
{
...
}在最初的一组括号之后,您看到的是main中参数的类型声明。还要注意,没有声明int返回类型。
没有人真的写这样的代码,坚持第二种形式。
如果您能够挖掘出Kernighan和Ritchie的原始白皮书 (第一次编辑,预ANSI),您将看到该表单(并且@dirkgently正确地提到它有时被称为K&R样式C),就像您在其他老C书中所做的那样。
如果您对功能声明和定义的过时形式感兴趣,也可以查看此链接。在google中搜索“旧风格C函数声明”将带来一些点击量。
https://stackoverflow.com/questions/10870574
复制相似问题