您的位置:首页 > 编程语言 > C语言/C++

[整理]C语言函数说明和定义

2014-06-15 14:01 176 查看
函数的一般形式是:
type-specifier function_name(parameter list) parameter declarations{
body of the function
}

1.类型说明符定义了函数中return语句返回值的类型,该返回值可以是任何有效类型。假如没有类型说明符出现,函数返回一个整型值。

当一个函数没有明确说明类型时, C语言的编译程序自动将整型( i n t)作为这个函数的缺省类型,缺省类型适用于很大一部分函数。

当有必要返回其它类型数据时,需要分两步处理:

  (1)首先,必须给函数以明确的类型说明符;

  (2)其次,函数类型的说明必须处于对它的首次调用之前。只有这样,C编译程序才能为返回非整型的值的函数生成正确代码。

2.返回非整型数据的函数被使用之前,必须把它的类型向程序的其余部分说明。

若不这样做,C语言的编译程序就认为函数是返回整型数据的函数,调用点又在函数类型说明之前,编译程序就会对调用生成错误代码。

为了防止上述问题的出现,必须使用一个显式的函数说明语句,通知编译器程序这个函数返回什么值。

3.显式的函数说明语句可以是调用函数外部,也可以是内部。

#include<stdio.h>

double func1();//函数说明
double func2();//函数说明

int main(void)
{
double ret;

ret= func1();
printf("%f",ret);

ret= func2();
printf("%f",ret);

return 0;
}

double func1( ){//函数定义
return 2.1;
}

double func2( ){//函数定义
return 3.2;
}


#include<stdio.h>

int main(void)
{
double ret;

double func1();//函数说明
double func2();//函数说明

ret= func1();
printf("%f",ret);

ret= func2();
printf("%f",ret);

return 0;
}

double func1( ){//函数定义
return 2.1;
}

double func2( ){//函数定义
return 3.2;
}


1.一般情况下,函数在调用子函数时,子函数必须先声明,要不会报错。(一般都将函数的声明放在一头文件里)

2.如若子函数为返回值是int时,可不用声明,因为编译器会为子函数默认一个声明,返回值为int类型的,所以子函数定义可放在任意外部的地方。

3.static修饰的函数作用域为从声明/定义处到源文件结尾处为止。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: