当前位置: 首页 > news >正文

【带头学C++】----- 三、指针章 ---- 3.9 数组作为函数的参数

当数组作为函数参数时,有几种常见的方式可以传递数组给函数:

  1. 数组作为指针传递:
    • 数组名在函数调用时会自动转换为指向数组第一个元素的指针。
    • 通过指针可以访问数组元素,但无法获取数组的大小。
    • 在函数中修改指针指向的值会影响原始数组。

示例代码如下:

void modifyArray(int* arr, int size) {for (int i = 0; i < size; i++) {arr[i] *= 2;  // 修改数组的每个元素}
}int main() {int array[] = {1, 2, 3, 4, 5};modifyArray(array, 5);// 输出修改后的数组值for (int i = 0; i < 5; i++) {cout << array[i] << " ";}return 0;
}

  1. 使用指针和大小作为参数传递:
    • 将数组与其大小一同作为函数的参数进行传递。
    • 可以通过指针访问数组的元素,并通过大小参数确保不越界访问。
    • 在函数中修改指针指向的值不会影响原始数组。

示例代码如下:

void modifyArray(int* arr, int size) {for (int i = 0; i < size; i++) {arr[i] *= 2;  // 修改数组的每个元素}
}int main() {int array[] = {1, 2, 3, 4, 5};modifyArray(array, 5);// 输出修改后的数组值for (int i = 0; i < 5; i++) {cout << array[i] << " ";}return 0;
}

  1. 使用引用传递:
    • 可以通过使用引用参数来传递数组,这样函数内部对数组的操作会直接影响原始数组。
    • 通过引用传递可以保留数组的大小信息。

示例代码如下:

void modifyArray(int (&arr)[5]) {for (int i = 0; i < 5; i++) {arr[i] *= 2;  // 修改数组的每个元素}
}int main() {int array[] = {1, 2, 3, 4, 5};modifyArray(array);// 输出修改后的数组值for (int i = 0; i < 5; i++) {cout << array[i] << " ";}return 0;
}
http://www.lryc.cn/news/220034.html

相关文章:

  • 完美处理 Android App 的 apk 输出路径与文件名
  • 【技术干货】开源库 Com.Gitusme.Net.Extensiones.Core 的使用
  • 大厂面试题-b树和b+树的理解
  • NeRF-SLAM部署运行(3060Ti)
  • 零基础编程入门教程软件推荐,零基础编程自学
  • Amazon EC2 安全可调用的云虚拟主机服务器
  • HTTP/HTTPS、SSL/TLS、WS/WSS 都是什么?
  • 软考之系统安全理论基础+例题
  • 棱镜七彩亮相工控中国大会,以软件供应链安全助力新型工业化高质量发展
  • 数据可视化:动态柱状图
  • vue3 自定义loading
  • Ceph-deploy跳过gpg-key验证(离线环境安装Ceph)
  • 想入行单片机开发的学生们的忠告
  • 【番外篇】C++语法学习笔记
  • js 字符串转数字
  • 【NI-DAQmx入门】外部采样时钟相关
  • Amazon EC2 Hpc7g 实例现已在更多区域推出
  • 【开题报告】基于SpringBoot的药店药品管理系统的设计与实现
  • Promise用法详解
  • 7.spark sql编程
  • 【2023】COMAP美赛数模中的大型语言模型LLM和生成式人工智能工具的使用
  • 数据结构-顺序表学习资料
  • 微信小程序获取剪切板的内容到输入框中
  • 【年底不想背锅!网络工程师必收藏的排障命令大全】
  • Windows服务器用PowerShell script判断服务器启动时间并做reboot动作
  • 【HTML】播放器如何自动播放【已解决】
  • Go Gin中间件
  • 财务数字化转型的切入点是什么?_光点科技
  • Langchain知识点(上)
  • Tomcat安装配置教程