数组和指针
来源:互联网 发布:知乎 paranoid android 编辑:程序博客网 时间:2024/05/19 09:01
数组的标识符就是一个特殊的指针(感觉上像是一个常量指针),在声明数组的时候就分配了物理存储空间,所以不能在引用其他数据的物理地址;而同类型的指针则完全可以替代一个数组来使用。由于以前不怎么写代码所以理解不深刻,下面是一个示例来说明这个问题:
#include <iostream>
using namespace std;
void main(){
int Array[3] = {1,2,3};
int* pArray = Array+1;//数组的标识符其实是一个指针
cout<<Array[1]<<endl;
cout<<*pArray<<endl;
cout<<pArray[0]<<endl;//对于每一个指针都可以看做是一个数组的首地址,这个地址下标就是这个数组的第0个
int a = 2;
int* pInt = &a;
//Array = pInt;//报错说明数组标识符相当于一个常量指针,在声明时已经分配好物理空间,不能引用其他的地址
cout<<pInt[0]<<endl;//只要有地址(即指针)就可以当做数组来用,拿到一个指针(物理地址),就可以
cout<<pInt[1]<<endl;//根据这个地址取得和地址已知的地址里的内容。第一种方法:使用指针++;
cout<<*(pInt+1)<<endl;//第二种方法:把此指针当做数组的首地址,使用数组下标来选择其他空间的元素
}
会发现Array[1]和*pArray和pArray[0]是完全相同的;
pInt完全可以当做数组首地址来使用。
- 指针和指针数组
- 指针数组和数组指针
- 指针数组和数组指针
- 指针数组和数组指针
- 指针数组和数组指针
- 数组指针和指针数组
- 指针数组和数组指针
- 数组指针和指针数组
- 指针数组和数组指针
- 指针数组和数组指针
- 数组指针和指针数组
- 指针数组和数组指针
- 指针数组和数组指针
- 数组指针和指针数组
- 数组指针和指针数组
- 指针数组和数组指针
- 指针数组和数组指针
- 数组指针和指针数组
- 学习笔记-bag of words (5)--相关论文
- Android make脚本简记
- 后台截图
- 阶段性总结
- 360的误杀 及其它
- 数组和指针
- MathWorks 发布2011a版MATLAB和Simulink产品系列
- CDMA 猫用AT命令发中文短信(C#)
- 一个不错的JDBC连接池教程(带具体例子)
- 利用spring的jdbcTemplate处理blob、clob
- WIN32汇编基础
- DUM 与 SIPstack多线程
- [Hack]Google Hacking的实现以及应用
- c#中为文件夹设置权限