读书人

为何函数里面还有个函数

发布时间: 2013-08-26 12:17:40 作者: rapoo

为什么函数里面还有个函数
这个函数是什么意思啊,为什么函数里面还有个函数,搞不明白,求解释,谢谢

static PT_THREAD(handle_input(struct httpd_state *s))
{

}
[解决办法]
我觉得那个 handle_input是一个指向函数的指针。。。
[解决办法]
1.猜测:嵌套调用,等价于


不知道返回值类型,
假设int ret;
ret = handle_input(struct httpd_state *s);
static PT_THREAD(ret);

2.猜测:宏定义展开,看外面那个是大写,极有可能是个宏定义,不见上下文,不知道真相
[解决办法]
引用:
1.猜测:嵌套调用,等价于

不知道返回值类型,
假设int ret;
ret = handle_input(struct httpd_state *s);
static PT_THREAD(ret);

2.猜测:宏定义展开,看外面那个是大写,极有可能是个宏定义,不见上下文,不知道真相

handle_input的struct httpd_state*s 是形参,不是函数调用!只是申明!
[解决办法]
引用:
Quote: 引用:

1.猜测:嵌套调用,等价于

不知道返回值类型,
假设int ret;
ret = handle_input(struct httpd_state *s);
static PT_THREAD(ret);

2.猜测:宏定义展开,看外面那个是大写,极有可能是个宏定义,不见上下文,不知道真相

handle_input的struct httpd_state*s 是形参,不是函数调用!只是申明!


那就是第二种猜测,宏的一些操作,比如拼接,自定义函数声明
我举个范例:

#define PT_THREAD(s) thread_##s
static PT_THREAD(handle_input(struct httpd_state *s))
==>static thread_handle_input(struct httpd_state *s)

读书人网 >C语言

热点推荐