当前位置: 技术问答>linux和unix
Linux下C语言,函数名和参数间加_P 什么意思啊!!
来源: 互联网 发布时间:2015-08-10
本文导语: 如下面的代码: int main _P((int, char *[])); 类似的还有 _V ,不知道什么意思 ,还请大侠帮忙 啊 ! | 是宏。 这源于c语法中存在两种不同的函数定义方式: int f() int a,b; { } 或者 int f(int a, int b) { } ...
如下面的代码:
int main _P((int, char *[]));
类似的还有 _V ,不知道什么意思 ,还请大侠帮忙 啊 !
int main _P((int, char *[]));
类似的还有 _V ,不知道什么意思 ,还请大侠帮忙 啊 !
|
是宏。
这源于c语法中存在两种不同的函数定义方式:
int f()
int a,b;
{
}
或者
int f(int a, int b)
{
}
而在声明它们时使用
int f();
或
int f(int a,int b);
比如我们可以定义
#ifdef __STDC__
#define _P(x) x
#else
#define _P(x) ()
#endif
然后就可以用
int f _P( (int a, int b) );
来兼容两种声明格式了。
而_V应该是用于函数定义的,很类似。
这源于c语法中存在两种不同的函数定义方式:
int f()
int a,b;
{
}
或者
int f(int a, int b)
{
}
而在声明它们时使用
int f();
或
int f(int a,int b);
比如我们可以定义
#ifdef __STDC__
#define _P(x) x
#else
#define _P(x) ()
#endif
然后就可以用
int f _P( (int a, int b) );
来兼容两种声明格式了。
而_V应该是用于函数定义的,很类似。
|
函数名称而已
|
函数副本??