数组与指针。

传首地址过去,然后通过地址输出数组元素。

1、一维数组

#include<iostream>
using namespace std;
#include <cstring>
void farray1(int array1[],int len)//注:此处是无法通过array1得到长度的,只能通过传参,因为其是数组首地址。
{
for(int i=;i<len;i++)
{
//cout<<array1[i]<<endl;
cout<<*(array1+i)<<endl;//因为传的是首地址,所以这两种方法都可以输出数组元素
}
} void farray2(int *array1,int len)//注:此处是无法通过array1得到长度的,只能通过传参,因为其是数组首地址。
{
for(int i=;i<len;i++)
{
//cout<<array1[i]<<endl;
cout<<*(array1+i)<<endl;//因为传的是首地址,所以这两种方法都可以输出数组元素 }
}
void main()
{
int marks[] = {, , , , };
int length1=sizeof(marks)/;
farray1(marks,length1);
farray2(marks,length1);
system("pause");
}

2、二维数组:

#include<iostream>
using namespace std;
#include <cstring>
void farray1(int array1[][],int len1,int len2)//注:此处是无法通过array1得到长度的,只能通过传参,因为其是数组首地址。
{
for(int i=;i<len1;i++)
{
for(int j=;j<len2;j++)
//cout<<array1[i][j]<<endl;
cout<<*(*(array1+i)+j)<<endl;//因为传的是首地址,所以这两种方法都可以输出数组元素
}
} void farray2(int (*array1)[],int len1,int len2)//注:要写明数组列数,不然无法传递
{
for(int i=;i<len1;i++)
{
for(int j=;j<len2;j++)
//cout<<array1[i][j]<<endl;
cout<<*(*(array1+i)+j)<<endl;//因为传的是首地址,所以这两种方法都可以输出数组元素
}
}
void main()
{
int marks[][] = {{, , },{ , , }};
int length1=sizeof(marks)/;//获得数组总长度
int length2=sizeof(marks[])/;//获得列数
int length3=length1/length2;//获得行数
farray1(marks,length3,length2);
farray2(marks,length3,length2);
system("pause");
}

C++函数传递数组的两种方式的更多相关文章

  1. Delphi过程函数传递参数的几种方式

    Delphi过程函数传递参数的几种方式  在Delphi过程.函数中传递参数几个修饰符为Const.Var.Out. 另一种不加修饰符的为默认按值传递参数. 一.默认方式以值方式传递参数 proced ...

  2. 【delphi】Delphi过程、函数传递参数的八种方式

    Delphi过程函数传递参数的八种方式

  3. shell 函数传递参数的几种方式

    1.最近总结了 shell 中 function 的传递变量的几种方式 1.传递单个变量 2.传递数组变量   #!/bin/bash   #trying to pass an variable.   ...

  4. Delphi过程函数传递参数的八种方式

    今天一同事问我为什么有些过程函数里面有Var而有些没有,不解,遂到网上百度,得解.快哉,快哉. 在Delphi过程.函数中传递参数几个修饰符为Const.Var.Out.另一种不加修饰符的为默认按值传 ...

  5. .net 调用SAP RFC函数获取数据的两种方式

    方式1:使用客户端自带的组件 安装客户端以后,添加引用:SAPFunctionsOCX(.net 的Com列表里一般找不到,需要引用DLL[一般位于以下路径:Program Files\SAP\Fro ...

  6. hive 传递变量的两种方式

    在使用hive开发数据分析代码时,经常会遇到需要改变运行参数的情况,比如select语句中对日期字段值的设定,可能不同时间想要看不同日期的数据,这就需要能动态改变日期的值.如果开发量较大.参数多的话, ...

  7. Spring使用JMS传递消息的两种方式

    方式一:同步收发消息,使用JMS template 消费者阻塞等待消息的到来. 方式二:异步收发消息,使用message listener container 消费者提供一个listener,注册一个 ...

  8. 向docker镜像中传递变量的两种方式

    测试用到的python文件: #!/usr/bin/env python3 #conding: utf-8 from http.server import HTTPServer, BaseHTTPRe ...

  9. hibernate createQuery查询传递参数的两种方式

    String hql = "from InventoryTask it where it.orgId=:orgId"; Session session = getSession() ...

随机推荐

  1. 40 最小的K个数(时间效率)

    题目描述: 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,.   测试用例: 功能测试(输入的数组中有相同的数字:输入的数组中 ...

  2. MySQL数据库唯一性设置(unique index)

    1,命令行操作 分为两种.一种是在建表时就想好要加上唯一性,另一种是在后期才发现需要设置唯一性. 建表时: CREATE TABLE `t_user` ( `Id` int(11) NOT NULL ...

  3. vue 如何动态切换组件,使用is进行切换

    日常项目中需要动态去切换组件进行页面展示. 例如:登陆用户是“管理员”或者“普通用户”,需要根据登陆的用户角色切换页面展示的内容.则需要使用 :is 属性进行绑定切换 <template> ...

  4. base64格式文件下载方法

    下载图片时,接口返回的地址是base64格式的文件数据,因为页面需要把base64格式的数据转换为文件,再进行下载: 解决方案: 下载按钮: <el-button type="defa ...

  5. python中的各个包的安装,用pip安装whl文件

    在安装之前,一直比较迷惑究竟如何用,安装完后,发现竟然如此简单 首先我一般用的是python27,官网下载python27msi安装window7 64位后,已经自带了Pip 和 easy_insta ...

  6. Profile 动态切换环境

    一.多 Profile 文件我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml默认使用 application.properties 的 ...

  7. windowbuilde02 表格创建

    /** * 设置表格 * * * */ private JTable getTable() { if (table == null) { table = new JTable(); //定义列名数组 ...

  8. C#-WinForm中文本框的中文乱码问题

    上面这句话可以解决textbox中的中文乱码问题   来自为知笔记(Wiz) 附件列表 QQ图片20151218124007.png

  9. HDU 2045不easy系列之三LELE的RPG难题(趋向于DP的递推)

    不easy系列之(3)-- LELE的RPG难题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...

  10. mysql基础综述(四)

    1.数据库的简单介绍 1.1 数据库,就是一个文件系统,使用标准sql对数据库进行操作 1.2 常见的数据库 oracle  是oracle公司的数据库,是一个收费的大型的数据库 DB2,是IBM公司 ...