一维数组
来源:互联网 发布:查看数据库命令 编辑:程序博客网 时间:2024/06/08 19:58
1. 以指针的方式访问一维数组
int a[10]={1,2,3,4,5,6,7,8,9,10};int *p=NULL;p=a;//地址值 元素值p==&a[0]; *p==a[0]p+1==&a[1]; *(p+1)==a[1];p+2==&a[2]; *(p+2)==a[2];p+3==&a[3]; *(p+3)==a[3];p+4==&a[4]; *(p+4)==a[4];p+5==&a[5]; *(p+5)==a[5];p+6==&a[6]; *(p+6)==a[6];p+7==&a[7]; *(p+7)==a[7];p+8==&a[8]; *(p+8)==a[8];p+9==&a[9]; *(p+9)==a[9];
a是数组的内存基址,内存的直接地址不能被修改。即不能进行a=a+1;操作。
2. 指针数组
指针数组:数组的每一个元素都是指针变量。指针数组的每一个元素都必须是同一类型的指针。
指针数组的声明:
数据类型 * 标识符[常量表达式];
int *p1[3];//声明了一个int类型的指针数组p1,其中每个元素都是一个指向int型的数据指针。int a=1,b=2,c=3;p1[0]=&a;p1[1]=&b;p1[2]=&c;
3. 指向数组的指针数组
#include<iostream.h>void main(){ double aa [2] = { 1.1, 2.2 } ; double bb [2] = { 3.3, 4.4 } ; double cc [2] = { 5.5, 6.6 } ; double ( * pf [3] ) [2] ; /* fp是长度为3的数组,元素是指针。 但是,指针的关联类型是长度为2的浮点型数组 double[2] */ pf [0] = & aa ; pf [1] = & bb ; pf [2] = & cc ; for ( int i = 0 ; i < 3 ; i ++ ) { for ( int j = 0 ; j < 2 ; j ++ ) cout << * ( * pf [ i ] + j ) << " " ; cout << endl ; }}//1访问数据元素fp[i] i=0,fp[i]==&aa//2访问对象*fp[i] *pf[i]==aa//3地址偏移*fp[i]+j j==1,*fp[i]+j==aa+j//4访问数据*(fp[i]+j) *(fp[i]+j)==*(aa+j)==aa[j]
阅读全文
0 0
- 数组(一维数组)
- 数组---一维数组
- 数组(一维数组)
- java数组--一维数组
- 一维数组,字符数组
- 一维数组、二维数组
- 一维数组&三维数组
- Java数组 一维数组,二维数组
- array 数组 一维数组 二维数组
- 一维数组、数组排序、字符数组
- Javascript - 数组 一维数组 二维数组
- 一维数组
- 一维数组
- oracle一维数组
- hdu2955robberies一维数组
- 一维数组
- 一维数组?
- 一维数组
- hibernate-关系映射-多对多(单向)-11
- Jmeter参数化的4种方法
- Linux基础-7(nginx)
- 第八届蓝桥杯国赛Java b组 第一题
- 贝叶斯网络
- 一维数组
- Pycharm 如何在proxy环境中安装package
- Reids问题说明
- leetcode 129. Sum Root to Leaf Numbers
- 至——那些急于进入软件培训机构的兄弟
- 交换排序(冒泡排序—改进、快速排序)
- 第八届蓝桥杯国赛Java b组 第二题
- mac版本webstorm配置compass的两种方法
- 【life】:关于找老婆的思考