函数定义
C 函数定义的风格不同于声明(见函数声明)。第一行由返回类型独占,第二行是函数名称及参数列表,第三行由左花括号独占。以下是 NGINX 核心的例子:
ngx_int_t
ngx_http_compile_complex_value(ngx_http_compile_complex_value_t *ccv)
{
...
}
注意:参数列表
(
字符周围没有空格,并且这三行是没有缩进的。
如果参数列表太长,超过 80 个字符宽度限制,应将它拆分成单独的行,每行保持 4 空格缩进。以下是 NGINX 核心的例子:
ngx_int_t
ngx_http_complex_value(ngx_http_request_t *r, ngx_http_complex_value_t *val,
ngx_str_t *value)
{
...
}
如果函数返回类型是个指针,应在类型与 *
字符之间加入空格,像这样:
static char *
ngx_http_core_pool_size(ngx_conf_t *cf, void *post, void *data)
{
...
}