c - 为什么以这种方式声明函数参数: void func(x) int x; {}

标签 c function parameters definition putchar

我在查看 putchar.c 时偶然发现了这些行

我想知道为什么参数 ptrc是在参数主体之外声明的吗? 这是某种“好的老方法”还是有实际用途?

int
_putchar_r (ptr, c)
     struct _reent *ptr;
     int c;
{
  return __sputc (c, _stdout_r (ptr));
}

最佳答案

事实上,这是声明函数参数的“旧”方式。

我有点喜欢它,因为它不断提醒我们,函数的所有参数都是仅存在于函数范围内的局部变量,并且传递到任何函数的任何参数始终是值副本。

关于c - 为什么以这种方式声明函数参数: void func(x) int x; {},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56617477/

相关文章:

javascript - 你能用 this.queryText.replace 替换两个不同的文本吗?

c - c中的指针和结构

c++ - 使用指针创建函数

javascript - 如何制作返回其内部函数值的函数?

javascript - jQuery 将参数传递到 ajax 成功的函数调用中

ruby-on-rails - 我可以将参数传递到 Controller 路径吗?

c - 父进程不会使用 signal() 等待所有子进程退出

与空字符串相比,C 程序不会终止

c - 当我尝试在 c 中初始化时的指针

javascript - (this) 在函数声明之后