声明定义R-1-1-14强制

禁止函数声明与定义不一致

包括: 函数返回值类型、参数类型、参数名。

例外: C++ 允许重载,参数类型、参数名不一致是可能的,但函数返回值类型不一致是禁止的。

函数声明与定义不一致
test.c
1void foo(void);
禁止函数声明与定义不一致 [gjb8114-r-1-1-14]
2int foo(void)
3{
4 return 0;
5}
6
7void bar(int x);
禁止函数声明与定义不一致 [gjb8114-r-1-1-14]
8void bar(float x)
9{
10}
11
12void baz(int x);
禁止函数声明与定义不一致 [gjb8114-r-1-1-14]
13void baz(int y)
14{
15}
函数声明与定义一致
test.c
1void foo(void);
2void foo(void)
3{
4}
5
6void bar(int x);
7void bar(int x)
8{
9}
10
11void baz(int x);
12void baz(int x)
13{
14}