gpt4 book ai didi

c - 这个声明从哪里来 : main _2a((argc, argv), int argc, char * argv[])

转载 作者:太空狗 更新时间:2023-10-29 17:16:45 28 4
gpt4 key购买 nike

我正在将 HP-Unix 下的大量 Oracle Pro*C 代码迁移到 Linux 环境。

程序中只定义了这样一个main方法:

main _2a((argc,argv), int argc, char * argv[])
{
...
}

我以前从未见过这样的声明 - 也没有在谷歌上找到任何东西。无论如何,它可以工作,而且据我所知,它被用作主要功能。

谁能说说这件事?

编辑:很好的提示 - 有一个宏定义:

 # define _2a(list,a1,a2)                 list a1;a2;

仍然看不清楚(对我来说..)

最佳答案

这个宏用来制作K&R C -style 函数定义看起来更像“现代”C89 定义。

扩展代码如下:

main (argc,argv) int argc;char * argv[];
{
...
}

或者使用更好的缩进:

main(argc, argv)
int argc;
char *argv[];
{
...
}

这是一种古老的书写方式:

int main(int argc, char *argv[])
{
...
}

关于c - 这个声明从哪里来 : main _2a((argc, argv), int argc, char * argv[]),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26998002/

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