C/C++教程

【C语言】函数

本文主要是介绍【C语言】函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

C语言函数有利于理解何为面向过程,不同语言函数使用方法不同

函数是C语言的基本单位,类是Java,C#,C++的基本单位

一、为什么需要函数

避免了大量重复性操作

有利于程序的模块化

​ 例:

image-20210109221253507

二、什么叫函数

逻辑上:能够完成特定功能的独立的代码块

物理上:接收数据(可无)
处理数据(可无)
返回处理(可无)

总结:函数是个工具,用于解决大量类似问题
可以当做一个黑匣子

三、函数的定义

      返回值  函数的名字 (函数形参列表)
      {
      函数的执行体
      }
  1. 函数定义的本质是详细描述函数之所以可以实现某个特定功能的具体方法

  2. return 表达式;

    1. return 用于终止被调函数,向主调函数返回表达式的值
    2. 如果表达式为空,则只终止被调函数
  3. 函数返回值的类型也称为函数的类型,若函数名前的返回值类型和函数执行体return的类型不同,则以函数名前的返回值类型为准

四、函数的声明

返回值 函数的名字 (函数形参列表); // 放在main函数前,分号不能丢弃

​ 作用:

  1. 告诉编译器即将可能出现的若干个字母代表的是一个函数
  2. 告诉编译器即将可能出现的若干个字母所代表的函数的形参和返回值得具体情况
  3. 函数声明是个语句,末尾要加分号
  4. 库函数 的声明是通过 #include<库函数所在的文件的名字.h> 来实现的

五、函数的分类

  1. 有参函数 和 无参函数
  2. 有返回值 和 无返回值
  3. 库函数 和 自定义函数
  4. 值传递函数 和 地址传递函数(地址传递函数不存在)
  5. 普通函数 和 主函数
    1. 一个程序有且只能有一个主函数

    2. 主函数可以调用普通函数,反之不行 (原因)

      ​ 因为main函数是入口函数,谁来调用它?

      ​ 另外,main函数是整个程序的入口函数,假如允许调用main,那么你调用main的代码写在main里面,岂不成了一个无限嵌套递归调用?

    3. 普通函数可以相互调用

    4. 主函数是程序的入口,也是程序的出口

六、形参和实参

1.形参(形式参数)

​ 在函数定义中出现的参数可以看做是一个占位符,它没有数据,只能等到函数被调用时接收传递进来的数据,所以称为形式参数,简称形参

2.实参(实际参数)

​ 函数被调用时给出的参数包含了实实在在的数据,会被函数内部的代码使用,所以称为实际参数,简称实参

使用注意:

  1. 个数相同
  2. 位置一一对应
  3. 类型兼容

七、变量的作用域和存储方式

1.按作用域:

​ 1.全局变量

​ 在所有函数外部定义的变量

​ 使用范围:从定义位置开始到整个程序结束

​ 2.局部变量

​ 在一个函数内部定义的变量或者函数的形参

​ 使用范围:只能在本函数内部使用

​ 注意:全局变量和局部变量命名冲突时,全局变量被屏蔽

2.按存储方式(略):

​ 静态变量

​ 自动变量

​ 寄存器变量

这篇关于【C语言】函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!