指针

指针与一维数组

万能公式

  • p[i] = *(p+i) = (i+p) = i[p]

    &p[i] == &(
    (p+i))== p+i

指针与二维数组

二维数组万能公式: ((p+i)+j)=a[i][j]

  • 对于一维数组而言,array + i 是array[i]的地址
  • 二维数组--->本质上就是n行个的一维数组--->每个有m列的一维数组
  • 行指针:a+i = &a[i] 即指向一行的指针
  • 列指针:a[i] = *(a+i) = &a[i][0] 即指向一列的指针

    上述行指针与列指针的数值相同,但意义摆在那了,并不同。

下面举一个例子:

int a[3][4];

a+1 则是行指针

*a则是列指针 参考一维数组与指针万能公式

a[1][0] 就是一个y[0]

a[1][1] 就是一个y[1] <---y+1

这个y就是一个普通的数组了

二维数组中

a[1]+1 ==>跨一行 行指针

*(a+1)+1 ==>跨一列 列指针

二维数组做形参:a[][2] 前一个可省,后一个不可省

行指针

定义形式:数据类型(指针名)[一维数组维数]

eg.int (
p)[4];

p是行指针, *p+j则是列指针



int *p[4];

数组中每个元素都是个指针;

传递任意维数的数组本质上就是传递指向数组中的第一个元素的指针变量!

最新文章

  1. Laravel 5.3 登录注册底层实现详解
  2. UVa 12166 修改天平
  3. Java中事务的概念
  4. 详解spring事务属性
  5. segmentfault.com mongo出识以及对数组的操作
  6. Java 反射机制及Annotation
  7. the serializable class XXX does not declare a static final seriaVersionUID...的问题
  8. linux内核2.4.x网络接口分析层次图
  9. CAS SSO:汇集配置过程中的错误解决方法
  10. 关于ajaxfileupload.js一些问题和上传图片就立即显示图片功能
  11. HDOJ的题目分类
  12. 【笔记】虚拟机用Xshell登陆报错“ssh服务器拒绝了密码”解决方法
  13. console报错类型
  14. go语言调度器源代码情景分析之五:汇编指令
  15. A + B 问题
  16. 到底什么时候才需要在ObjC的Block中使用weakSelf/strongSelf
  17. cvc-complex-type.2.4.d: 发现了以元素 'd:skin' 开头的无效内容。此处不应含有子元素。
  18. 『ACM C++』 Codeforces | 1066B - Heaters
  19. devstack环境中不能创建cinder volume
  20. BIEE-CSS样式大全

热门文章

  1. 学习ASP.NET Core Blazor编程系列二——第一个Blazor应用程序(上)
  2. Html飞机大战(六):移动飞机
  3. Windows SMTP服务器的中继列表
  4. Windows Server体验之管理
  5. Windows Server体验之安装
  6. 接入Twitter和Facebook分享踩坑记录
  7. js 数组中的方法
  8. Java根据Freemarker模板生成Word文件
  9. Prometheus 监控 Kubernetes Job 资源误报的坑
  10. 使用docker-compose方式安装redash