首先强调 指针数组归根结底是个数组;数组指针归根结底是个指针。

数组指针

以int (*int)[10]为例

()的优先级大于[],因此首先它是一个指针,它指向一个数组,数组的维数是10。因此数组指针也称为“行指针”,它的跨度是一行一行的。例如

#include <iostream>
using namespace std;int main()
{int v[2][3] = {{1, 2, 3}, {4, 5, 6}};int (*a)[3] = v;          //指向第0行的指针cout << **a << endl;cout << **(a+1) << endl;  //a+1 变成指向第1行的指针
}

输出

1
4

它的主要用途是用在二维数组的传递,例如

#include <iostream>
using namespace std;void test(int (*v)[3])
{cout << v[1][1] << endl;
}int main()
{int v[2][3] = {{1, 2, 3}, {4, 5, 6}};test(v);
}

结果输出5, 更多向函数中传递二维数组参考。

指针数组

它是一个数组,;里面存放的东西是指针。

行如 int* pv[3],[]的优先级大于*,因此它是一个维数为3的数组,里边存放这指向int的指针。例如

#include <iostream>
using namespace std;int main()
{int v[2][3] = {{1, 2, 3}, {4, 5, 6}};int* pv[2];for (int i = 0; i < 2; ++i)pv[i] = v[i];
}

[c/c++]指针数组 pk 数组指针相关推荐

  1. c语言指针与一维数组PPT,C语言第5章指针和一维数组.ppt

    C语言第5章指针和一维数组.ppt 2019/11/5,第5章 指针与一维数组,软件学院计算机科学与技术教研室 冯海文 fhw19770704,2019/11/5,5.1 指针的概念与运算,C语言继承 ...

  2. C++ 笔记(27)— 指针变量、数组和指针、指针数组、数组指针、指针常量与常量指针

    1. 什么是指针变量? 指针变量是专门有一个变量来存放指针. int main(int argc, char *argv[]) {int a = 10;int *p = &a; //通过取地址 ...

  3. 关于C语言中的数组指针、指针数组以及二级指针

    概念解释 数组指针:首先它是一个指针,它指向一个数组,即指向数组的指针:在32 位系统下永远是占4 个字节,至于它指向的数组占多少字节,不知道.数组指针指向的是数组中的一个具体元素,而不是整个数组,所 ...

  4. C++ 笔记(14)— 指针(指针声明、取地址、取值、new/delete、NULL指针、指针运算、指针数组、数组指针、指针传递给函数、从函数返回指针)

    1. 声明指针 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,您必须在使用指 针存储其他变量地址之前,对其进行声明. 指针变量声明的一般形式为: type * ...

  5. Go 学习笔记(13)— 指针定义、指针特点、空指针、指针数组、指向指针的指针、指针作为函数入参

    1. 复合数据类型 Go 语言基本的复合数据类型有指针.数组.切片.字典.通道.结构和接口等.格式如下: * pointerType // 指针类型, [n]elementType // 数组类型, ...

  6. C指针4:数组指针(指向数组的指针)

    先明确两个概念:(1和2是两个完全不一样的东西) 1.数组指针:如果一个指针指向了数组(该数组就是普通定义的数组),我们就称它为数组指针(Array Pointer).(1强调的是指针) 2.指针数组 ...

  7. extern数组与extern指针

    数组名代表了存放该数组的那块内存,它是这块内存的首地址.这就说明了数组名 是一个地址,而且,还是一个不可修改的常量,完整地说,就是一个地址常量.数组名 跟枚举常量一样,都属于符号常量.数组名 这个符号 ...

  8. c语言中的字节和元素,C语言指向数组元素的指针

    指向数组元素的指针和运算法则 所谓指向数组元素的指针,其本质还是变量的指针.因为数组中的每个元素,其实都可以直接看成是一个变量,所以指向数组元素的指针,也就是变量的指针. 指向数组元素的指针不难,但很 ...

  9. C语言指针数组与数组指针的区别

    C语言指针数组与数组指针的区别 首先,顾名思义 数组指针是一个指针,是指向一个数组的指针,如 int (a*)[5]:这就是一个指向含有5个元素的数组的指针 指针数组是一个数组,它包含的元素全是指针变 ...

最新文章

  1. 寻找数组中只出现一次的数
  2. defunct 进程占用端口_Linux如何查询哪些端口被占用
  3. 抓取网页并解析HTML
  4. 搭建sql注入实验环境(基于windows)
  5. AIX性能管理指南-luoqiangb@dc
  6. Django(part4)--练习及re_path方法
  7. 公共钥匙盒(排序CCF)
  8. python函数理解_Python 知识理解---函数
  9. 关于 C语言的 按位取反 ~
  10. Python中sort和sorted函数代码解析
  11. 3.4 小乌龟git使用说明
  12. vtd xml java_新兴XML处理方法VTD-XML介绍
  13. Centos7 搭建 Socks 服务
  14. Android Socket 服务器ServerSocket发数据到客户端
  15. 尺规作图切线的画法_基于尺规作图的新型公切线画法
  16. 搜狐新闻数据400w+
  17. Android S 默认WIFi 热点名称
  18. 【论文精读】Deep Defocus Map Estimation using Domain Adaptation-2019CVPR
  19. win11电脑锁定触摸板或无鼠标打开触摸板
  20. 安卓学习笔记---支付宝支付-交易订单处理失败,请稍后再试。(提示ALI59错误)

热门文章

  1. mysql分窗函数_频谱分析中如何选择合适的窗函数
  2. phpcms扁平化简约工作室团队介绍网站模板
  3. 话费直充/三网直冲/联通直充/电信直充/移动直充/系统源码
  4. 简洁的网页跑丢了动态动画404页面源码
  5. C#结构体和字节数组的转换
  6. Magento模型集合addFieldToFilter常用过滤条件
  7. SVG 教程 (七)SVG 实例,SVG 参考手册
  8. Magento: 后台添加预览按钮 View product in frontend from Magento admin
  9. Python实例讲解 -- 磁盘文件的操作
  10. 微服务四个常见问题,以及SpringCloud Netflix和SpringCloud Alibaba和Apache Dubbo zookeeper区别