十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在程序中出现函数名时,要注意区分以下三种情况:
创新互联专业为企业提供玉环网站建设、玉环做网站、玉环网站设计、玉环网站制作等企业网站建设、网页设计与制作、玉环企业网站模板建站服务,十余年玉环做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
1. main函数中的int max(int x,int y); 是函数的声明,一般格式为 返回值 函数名(参数类型 参数);
2. max(a,b)为函数的调用,一般格式为 函数名(参数);
3. 后面的max(int x,int y){ ...}是函数的定义,一般格式为 返回值 函数名(参数类型 参数){函数体}
c语言规定,在一个函数定义之前调用它,需要提前进行声明。
原因是,如果没有声明函数,当程序运行到max(a,b)时,由于后面的函数定义还没有被读到,所以计算机并不知道max是个什么东西,程序就会出错。
如果将函数定义提到main函数的前面,就无需进行声明了,程序也不会报错。
返回值类型,如void,float,int,char等等。如果未写,则默认为int型。
调用的函数名
括号内写上所传递的数据类型和用来接收数据的变量。如(float
num1,int
num2)且数据类型及数量与调用函数时一致
举例子:int
sq(int
a,int
b);
函数首部包括函数的类型名、函数名和形参列表。
下面以一个具体函数来说明什么是函数首部。
int fun(int a, int b) // 函数首部
// { }中的内容就是函数体
{
return ab ? a : b; // 函数返回值
}
我也来 说几句。。
标准编译器 对函数的调用 都要
先申明 才能 调用
(生产的时候就这样设定的)。。我推荐试用
大点的 vs2005,vc2000.
小点的 Dev-cpp ,Turboc 3.0 (2.0 不支持鼠标有点 麻烦)
这里 就涉及: 申明和定义之间的区别。
申明-- 不开辟内存,仅仅告诉编译器,申明的部分存在,要预留一点空间。
定义-- 开辟内存。
申明 属于 预编译范畴的。最好写在头文件中(楼主,自定义头文件学了没有啊?)(申明都写在头文件中,只是一种好的编程习惯)
因为 在编译的时候,编译器先处理一些特殊数据(宏定义,函数的申明,变量的申明),在这个过程中,编译器 通过申明 可以预测整个定义需要的内存大小,并且 把这些大小预留起来,留给定义的时候使用(因为虽然定义,但是在 main函数里面没有调用,一样的不分配内存)。
如果不事先申明,直接定义,有可能会造成系统崩溃,出现内存不足,不能分配。 然而现在内存都是1G左右了,所以一般空间都足够,所以你也可以不申明直接定义函数。
但是一旦内存紧张,就会出错,而且程序简洁性就很低。(不看到定义,还不知道原来还定义了这么一个函数!!!)
还有 变量也一样,标准的都是 先申明在定义。
extern int i; //申明
int i=0; //定义并初始化为0
int i; //定义
.。。。。。。。。。。。。。。。。。
所以 从现在其要养成良好的编程习惯
先申明,在定义。
申明最好都放在 一块,并且都在头文件中(为了便于管理)。
void a(int b)
{
coutb;
}
void是函数类型
a函数名
(int b)函数参数的名称、个数,参数的数据类型、指针
{...}函数体
以上四个就是函数属性。
一个函数由两部分组成:①函数的首部,包括函数名、函数类型、函数属性、函数参数(形式参数)名、参数类型。②函数体,即函数首部下面的花括号内的部分。函数体一般包括两部分:声明部分、执行部分。