数值指针与指针数组
2010-05-29 10:54
176 查看
数值指针和指针数组时C和C++中容易出错的问题,而且时间久了很容易混。下面讲解数组指针和指针数组的使用方法和记忆方法。
[1]指针数组
核心 :指针数组是个数组,数组中的每一个元素都是指针;
定义方式:type* arr[size];
定义例子:int * array[3].这是一个指针数组,每个元素都是一个指向整型数据的指针,在arr数组中共包含3个这样的指针。
使用例子:int* ptr=array[1];
[2]数组指针
核心 :数组指针是个指针,是一个指向数组的指针;
定义方式:type (*arr)[size];
注意定义中两种颜色个子代表的意义,灰色部分表示的是数组中存储的内容。
定义例子:int (*array)[3].这是一个数组指针,每个元素都是一个整型数据。
使用例子:int arr[3];
array=arr;
现在通过一个例子来验证上面讲解的内容:
#include<iostream>
using namespace std;
int main()
{
int* arr[3];//指针数组
int a=1;
int b=2;
int c=3;
arr[0]=&a;
arr[1]=&b;
arr[2]=&c;
for(int i=0;i<3;++i)
cout<<*arr[i]<<endl;
int* (*ptr)[3];//定义数组指针,该数组指针又指向一个指针数组
ptr=&arr;
for(i=0;i<3;++i)
cout<<*((*ptr)[i])<<endl;
return 0;
}
运行结果:
1
2
3
1
2
3
[1]指针数组
核心 :指针数组是个数组,数组中的每一个元素都是指针;
定义方式:type* arr[size];
定义例子:int * array[3].这是一个指针数组,每个元素都是一个指向整型数据的指针,在arr数组中共包含3个这样的指针。
使用例子:int* ptr=array[1];
[2]数组指针
核心 :数组指针是个指针,是一个指向数组的指针;
定义方式:type (*arr)[size];
注意定义中两种颜色个子代表的意义,灰色部分表示的是数组中存储的内容。
定义例子:int (*array)[3].这是一个数组指针,每个元素都是一个整型数据。
使用例子:int arr[3];
array=arr;
现在通过一个例子来验证上面讲解的内容:
#include<iostream>
using namespace std;
int main()
{
int* arr[3];//指针数组
int a=1;
int b=2;
int c=3;
arr[0]=&a;
arr[1]=&b;
arr[2]=&c;
for(int i=0;i<3;++i)
cout<<*arr[i]<<endl;
int* (*ptr)[3];//定义数组指针,该数组指针又指向一个指针数组
ptr=&arr;
for(i=0;i<3;++i)
cout<<*((*ptr)[i])<<endl;
return 0;
}
运行结果:
1
2
3
1
2
3
相关文章推荐
- 指针数组与数组指针
- 指针数组与数组指针
- 指针数组和数组指针的区别
- 指针数组和指向数组的指针
- 数组指针和指针数组
- 指针数组的指针数组
- 指针数组和数组指针的区别
- 指针函数和函数指针、指针数组和数组指针
- 指针数组,数组指针,存放数组指针的数组,指向存放数组指针数组的指针,函数指针,函数指针数组,指向函数指针数组的指针
- 指针数组和数组指针的区别
- 指针:一个函数返回两个数值
- 二级指针,指针数组和数组指针
- go语言:数组指针与指针数组
- c中指针数组与数组指针的区别
- 指针数组和数组指针
- C语言学习笔记(6)-如何从变量声明的表面上来区分指针数组和数组指针
- 指针数组与数组指针
- 数组指针和指针数组
- 指针数组和数组指针
- [C]二级指针与指针数组