指针数组与数组指针
来源:互联网 发布:淘宝价格走势app 编辑:程序博客网 时间:2024/06/04 23:45
数组指针与指针数组
数组指针
首先要明确一点数组由元素类型和数组大小共同决定
例1:int int_array[5]的类型为int[5],可以看成int[5] int_array(便于理解)
定义一个数组指针
例2: int (*p)[5];
由例1我们可以将例2看成int[5] *p;这样就一目了然了
p就是指针变量
接下来我们定义一个二维数组 int a[4][5];
接下来我们让p指向这个二维数组
p= a;//a是二位数组首元素的地址即&a[0][0];
当我们执行p++操作时 p指向了数组下一行的地址,即&a[1][0];
由此可见p指向的是一个一维数组,即数组指针指向的是一个一维数组;
指针数组
首先明确一点[]的优先级高于*我们要考虑优先级
定义一个指针数组
例3:int *p[5];
由于[] 的优先级高于*因此我们不能像例1那样看做成 int[5] *p(这样是错误的)
我们可以p[5]当做一个整体q 这样就变成了int *q;
q是一个指针,q是一个数组,因此数组q中的每个元素都是指针变量即p[0]、p[1]、p[2]、p[3]、p[4]都是指针变量
我们赋值时是给p[0]、p[1]、p[2]、p[3]、p[4]赋值,而不是给p赋值
p=a是错误的;p是一个常量,p不可修改。
区别:数组指针只是一个指针变量,指针数组是多个指针变量。
0 0
- 指针:指针与数组
- 指针与指针数组
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组与数组指针
- 数组指针与指针数组
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组 与数组指针
- 指针数组与数组指针
- 数组指针与指针数组
- 指针数组与数组指针
- 指针数组与数组指针
- Node.js 内存泄露 定位
- 表达式转型注意事项,和final修饰的变量会被JVM优化
- Deep Learning及NLP(自然语言处理)杂谈--第一部分
- css中margin-left与left的区别
- Deep Learning及NLP(自然语言处理)杂谈--第二部分
- 指针数组与数组指针
- 动画(四)属性动画的工作原理
- Android View 使用自定义stateListDrawable时使用 verifyDrawable(...)
- Java关键字final、static使用总结
- 界面升级: 全新的Dungeons & Dragons 在线商店
- Deep Learning及NLP(自然语言处理)杂谈--第三部分
- lftp连接异常情况分析过程
- linux下c程序的编辑编译运行调试
- [UVA 11865]Stream My Contest[最小树形图][二分答案]