C语言指针数组的作用

例如*a[5]与a[5]有什么区别,为什么*a[5]能赋初值.还有指针数组有什么用?能不能简单举一个例子应用一下... 例如*a[5]与a[5]有什么区别,为什么*a[5]能赋初值.还有指针数组有什么用?
能不能简单举一个例子应用一下
展开
 我来答
lchy5555
推荐于2016-10-07 · TA获得超过324个赞
知道小有建树答主
回答量:468
采纳率:0%
帮助的人:166万
展开全部

指针数组:数组成员是指针的数组。

作用:数组的属性全有。因为成员是指针,这就可以延伸出很多内容。包括:

  1. 成员是函数指针,整个数组就是一类相关函数的集合,便于代码架构的管理。

  2. 成员是链表指针啦,char指针,这种就是能做出类似散列表的结构。

总体来讲,就是一组相关数据的指针的集合,达到的目的就是搜集指向相关数据的指针放到一个集合里面。

百度网友acfaf9f
2010-07-28 · 超过12用户采纳过TA的回答
知道答主
回答量:193
采纳率:0%
帮助的人:56.3万
展开全部
int a[][] 与int(*a)[]等价的
例如int a[2][3]二维数组
int(*a)[]数组指针
二维数组就不说了很好理解
int(*a)[5] 这里a表示的意思就是 指向一个由5个整形数 组成的一维数组的指针

char *a[]与**a是等价的
char *a[]指针数组
**a指向指针的指针
例如可以这样用
char *a[]={"heool","good","word","great"};
char **b;
b=a;//这里的*b就相当于a[0]
更详细内容请参考谭浩强写的C语言的第九章 指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
365524764
推荐于2018-03-13 · TA获得超过241个赞
知道答主
回答量:197
采纳率:0%
帮助的人:205万
展开全部
*a[5]是一个指针数组相当于一个二维数组
a[0] djijekflj
a[1] ddiolqpq nv
a[2] uioekljspoi
a[3] iomspejfipel
a[4] ioullapapwm
其中的a[i]指示的是地址,

a[5]就是单纯的一维数组
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
春泥村雨
2010-07-28 · TA获得超过1241个赞
知道小有建树答主
回答量:256
采纳率:0%
帮助的人:387万
展开全部
以下程序在VS 2005调试通过,cout为C++语法,输出语句,同C的printf()
例:
#include<stdafx.h>
#include<iostream>
using namespace std;

int main()
{
int * a[5];//指针数组,这里数组有5个元素,每个元素都是一个指针
int b[5]={1,2,3,4,5};//普通数组,数组有5个元素,每个元素都是int型
a[0]=b;//把数组b的地址赋值给指针数组a的第一个元素(也就是a[0])
cout<<*a[0]<<*(a[0]+1)<<*(a[0]+2)<<*(a[0]+3)<<*(a[0]+4)<<endl;//输出12345
cout<<b[0]<<b[1]<<endl;//输出12
}
如果还不懂,可以Hi我。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a1012144015
2015-05-23 · TA获得超过6415个赞
知道大有可为答主
回答量:9038
采纳率:40%
帮助的人:1328万
展开全部
*a[5]是一个指针数组相当于一个二维数组
a[0] djijekflj
a[1] ddiolqpq nv
a[2] uioekljspoi
a[3] iomspejfipel
a[4] ioullapapwm
其中的a[i]指示的是地址,

a[5]就是单纯的一维数组

可以这么理解*a[5],里面的元素可以表示为a 、a+1。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式