浅谈函数声明和定义
任何一个C函数都有一个返回类型,要么是void,要么是函数生成结果的类型,任何一个C函数在第一次被调用前都要进行声明或定义(视编译器而定,习惯还是声明或是定义)。这样就不会有任何与返回类型相关的麻烦。例如:
1,在调用前声明后定义
double weight(double);
int main()
{
double = weight(2);//2是整数,但是因为weight()函数声明中形参是double,所以2实际是2.0;
printf("%g\n",double );
}
double weight(double)
{
int ret;
ret = 50*double;
}
2,在调用前直接定义
double weight(double)
{
int ret;
ret = 50*double;
}
int main()
{
double = weight(2);//2是整数,但是因为weight()函数声明中形参是double,所以2实际是2.0;
printf("%g\n",double );
}
如果一个函数在被声明前或是定义前调用,其返回类型值被默认为整型,如上例,weight()返回类型被main()默认为整型值,但是其返回类型为double 型,在连接weight()函数时会出错。