函数的概念

函数是一段可以重复使用的代码,用来独立地完成某个功能,它可以接收用户传递的数据,也可以不接收。

函数的类型

C语言中函数一般分为两类。

一类是库函数,即系统自带函数,如printf、scanf、strlen、pow等,在使用之前需要调用其头文件。如:stdio.h(标准输入输出)、string.h(头文件定义了一个变量类型、一个宏和各种操作字符数组的函数)、stdlib.h(标准库头文件)、math.h(进行数学运算的头文件)。

一类是自定义函数。如果库函数能够解决所有问题,那么就没程序员什么事了。因此,更重要的是自定义函数。自定义函数和库函数一样,都需要函数名(fun_name),返回值类型(ret_type)以及函数参数(paral)。注:自定义函数的命名最好与用处相关联。如求最大值函数—Max()、判断是否为素数—is_prime()

类型如下:

函数的声明一般放在头文件中,函数的定义(实现)都是放在源文件。

函数声明:告诉编译器有一个函数叫什么,参数是什么,返回类型是什么。但是具体存不存在,函数声明决定不了。

函数定义:指函数的具体表现,交代函数的功能实现。

此外,自定义函数声明与定义的顺序也需要提一嘴。函数的定义如果在调用之前,则一切正常。定义若放在调用之后,则程序会报错。简单的解决办法就是,在主程序前声明一下。即在前面添加一下—int Fun(a,b);

注:定义是更高级的声明。

函数的返回值类型不写的话,一般默认为是int类型。

函数的嵌套调用和链式访问

即函数与函数之间可以根据实际需求进行组合,互相调用。

但是,函数可以嵌套调用,但不能嵌套定义,即不能在函数内定义新的函数。

链式访问:即把一个函数的返回值作为另一个函数的参数。如下:

下面是在MSDN上查到的printf输出值类型

即输出打印的字符串的字符数,最内的先打印43。返回值43为2个字符,则次一级打印2,最后一级打印1。

为了符合现实生活中的多人同时编辑一个复杂程序,和商业应用,一般要拆分程序为几个部分。以编写计算器为例,一个人负责编写加法程序,一个人负责减法……以此类推。

而对于自己的头文件,引用格式用“ ”。如:#include "add.h"

函数的参数

函数的参数包括实际参数(实参)与形式参数(形参)

C语言入门-函数专辑(一)相关推荐

  1. c语言入门---函数

    目录标题 一.前言 二.函数是什么 三.c语言中函数的分类 四.为什么会有库函数 五.如何使用库函数 六.为什么会有自定义函数 七.如何来创建自定义函数 八.函数的参数 1.实际参数(实参) 2.形式 ...

  2. 超详细讲解C语言入门函数(一)

    解析已经很详细了,可以说相当入门级别了,如果喜欢的话那就请支持一下,后续会继续更新~ 代码网上搜索,并加以更改,侵权请联系删除,谢谢~ 部分例子没有详细解释是因为前面的例子已经说过了 3×4矩阵求最大 ...

  3. c语言入门函数大全,C语言函数大全(适合初学者).doc

    C语言函数大全(适合初学者)C语言函数大全(适合初学者) A 函数名: abort 功 能: 异常终止一个进程 用 法: void abort(void); 程序例: #include #includ ...

  4. C语言入门---函数类型与返回值(int和void)

    int和void的区别? 哈喽,各位小伙伴们,在我们学习C语言的过程中经常会看到书中的main函数前带有int和void,就像下面这样: 上面这两种有什么区别呢?在C语言中,可以把函数分为有返回值函数 ...

  5. c语言入门——函数的递归

    一.什么是递归? 程序调用自身的编程技巧称为递归( recursion). 递归做为一种算法在程序设计语言中广泛应用. 一个过程或函数在其定义或说明中有直接或间接 调用自身的一种方法,它通常把一个大型 ...

  6. else if函数 c语言,C语言入门 — if else

    C语言入门简单条件判断语句,if else, 本文章会使用到< 1.if else 可以简单的理解为"如果 就 否则"的语句,下面以举例子来进行解释,使用if else 判断 ...

  7. c语言printf清屏,C语言入门 — printf 使用方法

    本章节讲如何使用printf打印不同形式的内容,printf是c语言里常用的打印接口,也是c标准函数库,使用时需要#include ,下面讲讲如何使用printf: 一.printf 的基础知识: 1 ...

  8. c语言短整型变量字符,C语言入门 — 整型 char,short,int,long

    一.c 语言变量,有整型变量,浮点型变量,字符变量,布尔型变量. 1.整型变量位数,以下基于32位的操作系统: (1个字节等于8bits)点击查看二进制 长整型(long),短整形(short),整型 ...

  9. c语言char字符判断条件,C语言入门 — 字符型char

    本篇文章将会学习字符类型,并会结合 Ascii码对照表进行学习, 首先我们先来看下 #include // 标准输入输出头文件 stdio.h int main(void) // main 函数,vo ...

最新文章

  1. 2022年全球及中国滑雪铲行业品牌调研与市场消费规模分析报告
  2. java文件异步上传_[Java教程]原生javascript实现文件异步上传
  3. linux双显卡配置_Linux系统怎么配置双显卡?
  4. 工具使用——印象(汇总)
  5. jedis使用pipline的方法
  6. python爬虫网络出错怎么办_python爬虫之headers处理、网络超时问题处理
  7. sprintboot 发布
  8. linux虚拟机系统安装
  9. 苹果电脑win10蓝牙音响卡顿_Macbook Pro 2017安装win10以后蓝牙鼠标卡顿
  10. cisco思科交换机命令参考大全
  11. Ubuntu18.04设置系统默认音频设备:使用pavucontrol命令
  12. @Adaptive注解
  13. Animal Faces| 动物面部 | 数据集
  14. Echarts南丁格尔图.
  15. CentOS8搭建实现私有CA和证书申请
  16. mysql本地localhost连接不上
  17. 通用型简单latex模板&表格制作
  18. Failed to convert a NumPy array to a Tensor (Unsupported object type numpy.int64).
  19. java助教面试自我介绍_助教老师面试的自我介绍
  20. SQL Server使用代码创建数据库主文件日志文件

热门文章

  1. 本地vue-router模式设置为mode:‘history‘时,页面空白,无法加载
  2. Mac pro自动调用相册app打开手机的照片
  3. 图片无法显示因计算机内存可能不足,Windows照片查看器无法显示此图片,内存可能不足的解决方法...
  4. 2013acm南京站
  5. 水果店水果处理方案,水果店不新鲜怎么处理
  6. 阿里云监控插件的停止和开启
  7. 第七周作业——任务分解
  8. Solidity语言-----【够用级别】
  9. 【BAT(百度,阿里,腾迅)面试题】
  10. 六级作文小模板。。。