C语言函数

c语言函数

1、函数介绍
函数是一组一起执行一个任务的语句。每个C程序都至少有一个函数。即主函数main()。函数可以将复杂的程序划分为一个个小块,通常我们将执行一个特定任务的代码划分为一个函数。
使用一个函数要对其进行声明和定义,函数声明告诉编辑器函数的名称、返回值类型和参数。定义提供了函数的实际主体。
函数有很多的叫法,比如方法、子程序或程序等等。

2、main函数
在C语言函数之中,main 函数是一个最为特殊的存在。在一个c语言程序启动之后第一个执行的必须是main函数,程序中的其他函数都是它的子函数或者与之相关联的过程(例如回调函数)。并且在C语言函数中 ,只有main函数必须叫main函数,其他的函数可以自行进行命名。

3、定义函数
c语言定义函数的形式一般如下:

return_type function_name(parameter list)
{
	body of the function
}

举例:

void say_hello(void)//无返回类型,无参数函数
{
	printf("hello\r\n");
}
int add(int a,int b)//返回值为整数型,参数也为两个整数型
{
	return a+b;
}

其中每部分介绍如下:
(1)、返回类型(return_type):一个函数可以返回一个值。return_type是函数返回的数据类型。当有的函数不需要返回值时,我们可以将返回值定义为void,void指的是无类型。
(2)、函数名称(function_name):函数的实际名称。函数名和参数列表(parameter list)一起构成了函数签名。
(3)、参数(parameter):参数就像是占位符,函数定义中的参数被称为是形式参数。当函数被调用时,向参数传递的值成为实际参数。参数列表包括函数参数的类型、顺序、数量。参数也是可以选择的,也就是说,函数也可以没有参数。
注意:1.当数组作为函数参数时,不可以在函数内部使用sizeof函数来表示数组长度,数组长度只能作为参数传递到函数内。
2.函数定义时切记不要忘记参数的类型

(4)、函数主体(body of function):函数所要完成的功能的语句

4、函数声明
(1)、声明的格式
函数声明的格式一般如下:

return_type function_name(parameter list);

举例:
上面的add函数可声明如下:

int add(int a ,int b);

注意:在函数声明中,参数的名称不重要,只有参数类型是必须的,所以也可以声明如下:

int add(int, int);

(2)、关于函数声明的作用
如果我们采用直接定义的方式来创造函数的话,我们就需要时时刻刻关注这些函数之间的依赖关系,并且把他们正确的排序。然而,随着程序规模的增长,总要关注函数的依赖关系并且对函数进行排序,会给我们带来不小的工作量。所以就有了函数声明与实现分离。

5、函数调用
在创建完成一个C语言函数时,我们要通过调用的方式来使用它,调用可在main函数中,也可在其他函数中。
当程序调用函数时,程序的控制权会转移给被调用的函数。被调用的函数执行已定义的任务,当函数的返回语句被执行或者函数体执行完成时,控制权返回到调用该函数的函数。
调用函数时,需要传递参数,在C语言中,传递参数的个数需要与函数被定义时的参数个数相同。若函数返回一个值,则可以用一个变量存储返回值。
举例:

#include <stdio.h>//引用头文件

int add(intint);//函数声明

int main(int argv, char **argv)//主函数main
{
	int a = 10;
	int b = 5;
	int result = 0;
	result = add(a,b);//调用add函数,并且将返回值存储在result之中
	printf("%d\r\n",result);//打印结果	
	return 0;
}

int add(int a ,int b)
{
	return a+b;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值