指针数组与数组指针的使用
2007-11-12 20:01
411 查看
指针数组与数组指针的使用
指针数组,顾名思义就是一个数组,它里面的元素是指针。例如 int *p[3],那么它的意思是数组p中可以
最多存储 3个元素,这三个元素都应该是int指针类型;
数组指针,它是指向一个数组的指针,它的指向是整个数组,当然它的绝对地址和数组首元素的地址相同
。但是区别在于数组指针指向一整个数组,而数组首元素只是一个元素。
例如: int (*p)[4],为一个指向数组的指针p,数组大小应为4。则p指向整个数组。
#include<stdio.h>
void main(void)
{
int (*p)[3];
int a[3] = {2,3,4};
int b[3] = {10,11,12};
p=&a; //p指向整个数组,故应该用&a;而a为数组a的首个元素的地址,故p=a是错的
printf("%d",**p); //*p为a的首个元素的地址,**a为首个元素的值
}
指针数组,顾名思义就是一个数组,它里面的元素是指针。例如 int *p[3],那么它的意思是数组p中可以
最多存储 3个元素,这三个元素都应该是int指针类型;
数组指针,它是指向一个数组的指针,它的指向是整个数组,当然它的绝对地址和数组首元素的地址相同
。但是区别在于数组指针指向一整个数组,而数组首元素只是一个元素。
例如: int (*p)[4],为一个指向数组的指针p,数组大小应为4。则p指向整个数组。
#include<stdio.h>
void main(void)
{
int (*p)[3];
int a[3] = {2,3,4};
int b[3] = {10,11,12};
p=&a; //p指向整个数组,故应该用&a;而a为数组a的首个元素的地址,故p=a是错的
printf("%d",**p); //*p为a的首个元素的地址,**a为首个元素的值
}
相关文章推荐
- 指针数组和数组指针的使用
- 指针数组和数组指针的使用
- C语言指针数组使用案例【二级指针之指针数组】
- 【指针数组和数组指针的使用】
- 指针数组和数组指针的使用
- 指针数组和数组指针的使用
- 数组指针和指针数组的使用
- 使用快速排序算法对字符串数组进行排序(复习指向指针的指针以及指针数组的使用)
- C函数,函数指针,函数类型,函数数组,函数强制转换使用
- 指针数组和数组指针
- 数组指针与指针数组
- C语言学习笔记(6)-如何从变量声明的表面上来区分指针数组和数组指针
- 经典笔试题:一级指针数组、二级指针数组和三级指针的联合使用详解
- 一.数组和指针的差别二.函数的好处以及使用函数的注意项。三.用c语言如何实现面向对象?c语言哪些点体现了面向对象。
- 指针数组和数组指针的区别
- 指针数组和数组指针
- 数组指针和指针数组以及二维数组的函数间传递与返回
- 数组与指针的混合使用
- 数组指针和指针数组
- 指针数组和数组指针