23 函数初识

本博客主要内容为 “小甲鱼” 视频课程《带你学C带你飞》【第一季】 学习笔记,文章的主题内容均来自该课程,在这里仅作学习交流。在文章中可能出现一些错误或者不准确的地方,如发现请积极指出,十分感谢。
也欢迎大家一起讨论交流,如果你觉得这篇文章对你有所帮助,记得评论、点赞哦 ~(。・∀・)ノ゙

1. 为什么要自己定义函数?

  因为随着程序规模的变大,都免不了会遇到下面这些问题:

  • main 函数变得相当冗杂,程序可读性差
  • 程序复杂度不断提高,编程变成了头脑风暴
  • 代码前后关联度高,修改代码往往牵一发而动全身
  • 变量的命名都成了问题(因为简单的名字都用完了啊,小明,小红,旺财,阿福,隔壁家老王这些名字都用过了,为了不重复命名,只能小明2号,小红3号这样……)
  • 为了在程序中多次实现某功能,不得不重复多次写相同的代码
    ……

  我们在自己实现一个函数的时候,需要保证『一个函数只实现一个功能』。

2. 标准库函数

  C 语言的标准库中还为我们提供了很多实现各种功能的函数,有处理字符串的,有数学计算的,有输出输入的,有进程管理的,有信号、接口处理的……

有了这些函数,我们就不用去关注内部的实现细节,只需要将注意力放在程序的实现逻辑上即可。比如要打印字符串到屏幕上,我们只需要知道调用 printf 函数并给它传递要打印的内容即可,至于它内部是怎么做到的,我们不需要理会。

3. 函数的定义

  C语言要求函数必须“先定义,再调用”,定义函数的格式如下:

类型名  函数名(参数列表)
{
        函数体
}
  • 类型名就是函数的返回值,如果这个函数不准备返回任何数据,那么需要写上 void(void 就是无类型,表示没有返回值)。
  • 函数名就是函数的名字,一般我们根据函数实现的功能来命名,比如 print_C 就是“打印C”的意思,一目了然。
  • 参数列表指定了参数的类型和名字,如果这个函数没有参数,那么这个位置直接写上小括号即可(())。
  • 函数体就是指定函数的具体实现过程,是函数中最重要的部分

4. 函数的声明

  所谓声明(Declaration),就是告诉编译器我要使用这个函数,你现在没有找到它的定义不要紧,请不要报错,稍后我会把定义补上。声明函数的格式非常简单,只需要去掉函数定义中的函数体再加上分号(;)即可。

  有时候,你可能会发现即使不写函数的声明,程序也是可以正常执行的。但如果你把函数的定义写在调用之后,那么编译器可能就会找不着北了(会报错)。

  作为一个良好的编程习惯,建议大家还是无论如何都把函数的声明写上比较合适。

5. 函数的参数和返回值

  有时候,函数需要接收用户传入的数据,那么就需要使用函数的参数。根据需求,函数的参数数量可以有多个,类型也可以各不相同。而函数的返回值通常是反馈了函数的计算结果,也可以是函数的执行结果(比如成功或失败)。

参考

[1] “小甲鱼” 视频课程《带你学C带你飞》【第一季】P28

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值