参数传递之传递多维数组

//参数传递之传递多维数组(C++中没有真正的多维数组,即数组的数组)
void print(int(*matrix)[10], int rowSize){
    for (int i = 0; i < rowSize; i++){
        for (int j = 0; j < 10; j++)    {
            /*std::cout << matrix[i][j]<<", ";*/
            std::cout << *(*(matrix+i) + j)<<", ";//*:符号代表解引用,[] :优先级高*
        }
        std::cout <<std::endl;
    }
}
//等价定义
//void print(int matrix[][10], int rowSize){
//    for (int i = 0; i < rowSize; i++){
//        for (int j = 0; j < 10; j++)    {
//            /*std::cout << matrix[i][j]<<", ";*/
//            std::cout << *(*(matrix + i) + j) << ", ";//*:符号代表解引用,[] :优先级高*
//        }
//        std::cout << std::endl;
//    }
//}

int main()
{
    //参数传递之传递多维数组(C++中没有真正的多维数组,即数组的数组)
    int arr1[2][10] = { { 1, 2, 3, 4, 5 }, { 10, 20, 30, 40, 50 } };
    print(arr1, 2);
}
时间: 2024-10-08 20:44:17

参数传递之传递多维数组的相关文章

C/C++怎样传递二维数组,转载自CSDN

用二维数组作为参数传递(用二维数组处理矩阵),但是希望接受传递二维数组参数的函数可以处理任意维度的数组(希望矩阵的行数和列数都是不固定的). [以下转帖] ---------------------------------------------------------------------------------------------- 但一般传递二维数组的基本规则好像是这样的:可以用二维数组名作为实参或者形参,在被调用函数中对形参数组定义时可以可以指定所有维数的大小,也可以省略第一维的大

黑马程序员——c语言学习心得——函数传递二维数组

黑马程序员——c语言学习心得——函数传递二维数组 -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.定义指针的时候一定要初始化.   变量定义的时候给变量初始化,这是保证不出错的一个很好的习惯.尤其是在指针的使用上,如果我们没有给指针初始化,就会出现野指针,该指针的指向并不是我们所希望的,一旦错误的释放了这个指针,就会发生内存的访问.那么如何初始化指针变量呢,一般有以下几种方法:   1.初始化空指针   int* pInteger=N

通过函数传递二维数组

c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include void func(int n, char  str[ ][5] ) {  int i;  for(i = 0; i < n; i++)   printf("\nstr[%d] = %s\n", i, str[i]); } void main() {  char* p[3];  char str[][5] = {"abc","

使用session在jsp页面之间传递多维数组,用于实现全局变量的效果

使用session在jsp页面之间传递多维数组:发送数据的jsp页面:int [][] form_number=new int[4][4]; session.setAttribute("se_form_number",form_number);接收数据的jsp页面:int [][] data  =  (int[][])session.getAttribute("se_form_number"); 原文地址:https://www.cnblogs.com/ming-4

Ajax传递二维数组至后台ThinkPHP控制器

最近为单位做了专家库的小程序,没个专家有擅长的领域,这是通过一个checkbox来提交和编辑的.因为不想刷新页面,使用Ajax异步传输. 首先从专业数据表中读取所有的专业,并且生成checkbox: $(document).ready(function(){ $.ajax({ type:"POST", url:"http://localhost/yibu/index.php/Home/Expertadd/expertecho",//对应控制器读取专业列表 succe

前台和后台互相传递多维数组

上一篇文章介绍了前台和后台相互传递数组的方法,从客户端传一维数组到服务器可以用jquery的ajax方法直接传递.但如果传递的是多维数组呢? 此时可以借用json的stringify()方法将字符串数组转换为json数组对象传递到后台,后台再使用JSONArray对象的fromObject()方法将其转换为数组即可. 示例: JS代码: $(function(){ var array1 = new Array(); array1.push("A"); array1.push("

传递二维数组

int m[][4] = { {0,0,0,1}, {1,0,0,1}, {0,0,1,0} }; Mtriple<int> t(3, 4, (int*)m); 在传递任意行和列的二维数组时,可以采取在main函数中写成上述形式的方法 而头文件中写的函数要通过地址找到值 template<class DataType> inline Mtriple<DataType>::Mtriple(int mrow,int mcol, DataType *m) { int cnt=

使用指针形式向函数传递多维数组并在函数内部使用指针形式对多维数组进行引用和修改

定义一个double型二维数组A和另一个同等尺寸的double空二维数组B,编写一个函数将A中的数据复制到B中.并测试该程序. 1 #include <stdio.h> 2 void copy_ptr(const double (*s)[12],double (*tar)[12],int row,int col); 3 int main(void){ 4 const double rain[5][12]={ 5 {4.3,4.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,2.4,

curl的$post传递多维数组

php curl传数组的话只能传一维数组,如果想传多维数组:两个方法: 1.转换成json在传输 2. //通过curl模拟post的请求: function SendDataByCurl($url,$data=array()){ //对空格进行转义 $url = str_replace(' ','+',$url); $ch = curl_init(); //设置选项,包括URL curl_setopt($ch, CURLOPT_URL, "$url"); curl_setopt($c