C++中指针指向二维数组实例详解

 更新时间:2017年05月08日 11:39:53   投稿:lqh  
这篇文章主要介绍了C++中指针指向二维数组实例详解的相关资料,需要的朋友可以参考下

C++中指针指向二维数组实例详解

一维指针通常用指针表示,其指向的地址是数组第一元素所在的内存地址,如下

int ary[4][5];
int(*aryp)[5] = ary;

那么ary[4]相当于int(*aryp),以下理解如此,但参数传递需要知道实参所在 的一维个数,所以传递的时候应该传递多一个参数,子数组的引用可以理解 为(*p),那么取元素就是(*p)[i],如下

void printVal(int(*aryp)[5],int irowCount){
  for (int(*p)[5] = aryp; p != aryp + irowCount;p++)
  {
    for (size_t i = 0; i < 5; i++)
    {
      cout << (*p)[i] << endl;
    }
  }
}

缺点就是:传递的时候还需要传递1维数组的个数。但扩展性强。

同样三维数组可以使用指向指针的指针的数组。通常很少用。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • VC取得任务栏高度的方法

    VC取得任务栏高度的方法

    这篇文章主要介绍了VC取得任务栏高度的方法,需要的朋友可以参考下
    2014-07-07
  • 利用Qt实现获取计算机的硬件信息

    利用Qt实现获取计算机的硬件信息

    在开发时,常常会需要用到计算机的相关信息。利用这些信息,我们可以开发一些辅助模块。本文将利用Qt实现获取计算机的硬件信息,感兴趣的可以尝试一下
    2022-12-12
  • C++实现LeetCode(70.爬楼梯问题)

    C++实现LeetCode(70.爬楼梯问题)

    这篇文章主要介绍了C++实现LeetCode(70.爬楼梯问题),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • 详解c语言实现的内存池(适用于两个线程、不加锁、效率高)

    详解c语言实现的内存池(适用于两个线程、不加锁、效率高)

    这篇文章主要介绍了c语言实现的内存池(适用于两个线程、不加锁、效率高),设计一个内存池,要求效率比系统调用的效率要高(测试1万次),同时支持一个线程申请,另外一个线程释放,需要的朋友可以参考下
    2024-02-02
  • C++中的构造函数与析造函数详解

    C++中的构造函数与析造函数详解

    这篇文章主要介绍了C++中的构造函数与析造函数详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • C语言 Freertos的递归锁详解

    C语言 Freertos的递归锁详解

    这篇文章主要为大家详细介绍了C语言的递归锁,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • C++使用string的大数减法运算(2)

    C++使用string的大数减法运算(2)

    这篇文章主要为大家详细介绍了C++使用string的大数减法运算,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • opencv3/C++ HOG特征提取方式

    opencv3/C++ HOG特征提取方式

    今天小编就为大家分享一篇opencv3/C++ HOG特征提取方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • 浅谈VC++中的内联

    浅谈VC++中的内联

    在 Visual C++ 中使用内联汇编 一、内联汇编的优缺点 因为在Visual C++中使用内联汇编不需要额外的编译器和联接器,且可以处理Visual C++ 中不能处理的一些事情,而且可以使用在 C/C++中的变量,所以非常方便。
    2015-07-07
  • C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析

    C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析

    以下是对C++中输入一个字符串,把其中的字符按照逆序输出的两种方法进行了详细的分析介绍,需要的朋友可以过来参考下
    2013-07-07

最新评论