博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《C和指针》——数组的奇怪形式
阅读量:4098 次
发布时间:2019-05-25

本文共 694 字,大约阅读时间需要 2 分钟。

ap是一个指针名array是一个数组名

1. ap[-1]
负值的下标,下标引用就是间接访问表达式,只要把它转换为那种形式并对它进行求值。ap如果指向第3个元素(就是那个下标值 为2的元素),所以使用偏移量-1就是得到它的前一个元素,也就是array[1]。
2. ap[6] 反这个下标表达式转换为与其对应的间接访问表达式形式,其实就是*(ap+6)。
3. 2[array] 表示*(2+(array))

下面是测试代码,帮助理解

#include 
using namespace std;int main(){ int array[10]; for (int i = 0; i < 10; ++i){ array[i] = i; } cout << "array: "; for (int j = 0; j < 10; ++j){ cout << array[j] << " "; } cout << endl; int *ap = &array[3]; cout << "*ap: " << *ap << endl; cout << "ap[-1]: " << ap[-1] << endl; cout << "ap[6]: " << ap[6] << endl; cout << "*ap: " << *ap << endl; cout << "2[array]: " << 2[array] << endl; return 0;}

运行结果:

这里写图片描述

你可能感兴趣的文章
Koa 2 初体验(二)
查看>>
Koa2框架原理解析和实现
查看>>
vue源码系列文章good
查看>>
你不知道的Virtual DOM
查看>>
VUE面试题总结
查看>>
写好JavaScript条件语句的5条守则
查看>>
原生JS中DOM节点相关API合集
查看>>
【TINY4412】U-BOOT移植笔记:(7)SDRAM驱动
查看>>
C++模板
查看>>
【Unity】封装SQLite管理类
查看>>
【Unity】面试题整理
查看>>
【C#】如何实现一个迭代器
查看>>
【Lua】Mac系统下配置SublimeText的Lua编译环境
查看>>
【C#】利用Conditional属性完成编译忽略
查看>>
【Unity】微信登录后将头像存为bytes,将bytes读取成sprite图片
查看>>
【Unity】使用GPS定位经纬度
查看>>
【UGUI/NGUI】一键换Text/Label字体
查看>>
【C#】身份证本地验证
查看>>
【Unity】坑爹的Bug
查看>>
【算法】求数组中某两个数的和为目标值
查看>>