☰
Linux环境下c语言的函数2
2026/9/28 4:42:26 网站建设 项目流程

一.数组传参

想要在函数中传递数组,需要传递数组的长度,因为在编译器中只会把数组名当作一个指针类型的变量,不会算长度

一.整型数组

1.整型数组如何传参:

数组传参需要传递数组名(数组首元素地址)以及数组的长度,用sizeof获取长度会更加灵活

2.整型数组作为参数传参

  • 形参能不写成数组形式
  • 实参能不能传递数组过去)
  • 数组做函数参数的时候,数组会退化成指针

3.封装函数接收数组的形参

  • 函数类型 函数名( 数据类型 数组名【】,以及数组长度)
  • 在封装的函数中修改传递过来的值,不同过int型返回值或者指针,主函数是不能拿到封装函数内修改后的值

数组传参示例:


二.字符型一维数组

字符型一维数组 — 用来存放一个字符串

1.字符型数组如何传参:

字符型数组传参只需要传递数组名(数组首元素地址),字符型数组自带 ’\0‘ 作为结束标志,所以不需要长度来判断(如果需要长度,则用strlen获取)

2.字符型数组作为参数传参

  • 形参能不写成数组形式,可以写成指针形式

如 char *str, char *str1

  • 实参能不能传递数组过去),只传递数组名
  • 数组做函数参数的时候,数组会退化成指针

3.封装函数接收数组的形参

  • 函数类型 函数名(数据类型 数组名【】)
  • 函数内部修改数组里面的字符,主函数里原始字符数组的值会同步改变

代码示例

用函数形式写字符型数组的函数

三.二维整型数组

二维数组的本质 是一维数组的一维数组

二维整型数组如何传参

1.必须传递 除第一维以外所有维度的长度,第一维可以不写,例如列数不能省略(传递的时候必须固定列数),行数可以省略

2.二维数组退化后是行指针,编译器必须知道一行有多少个元素,才能算地址

3.传递的思想基本与一维整型数组一致

代码示例

以函数形式实现二维整型数组遍历

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询