gpt4 book ai didi

c++ - Hpux C程序中__(两个下划线)代表什么

转载 作者:太空宇宙 更新时间:2023-11-04 00:49:16 25 4
gpt4 key购买 nike

我在 HPUX C 程序中看到以下代码:

   extern int fcntl __((int, int, ...));
_LF_EXTERN int creat __((const char *, mode_t));

这些行是使用 aCC 编译的。

谁能告诉我上面代码中fcntlcreat后面的2个下划线是什么意思?

最佳答案

这很可能是一个宏,它允许在旧的、ANSI C 之前的编译器中使用 header 。
“旧式”C 函数声明不包括参数类型。

我怀疑它的定义看起来有点像这样

#ifdef __STDC__
#define __(params) params
#else
#define __(params) ()
#endif

我相信类型安全的函数原型(prototype)是 C 从 C++ 中采用的第一个语言特性。
事实上,我记得这一点让我觉得自己非常非常老。

关于c++ - Hpux C程序中__(两个下划线)代表什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25383225/

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