> 首页 > 生活 > 百科 > 什么是指针数组

什么是指针数组

来源:网络 作者:佚名 时间:04-08 手机版

在C语言语言中,数组元素全为指针的数组称为指针数组。指针数组可以作为函数的参量使用,使用方式与普通数组类似。数组指针是指向数组首元素的地址的指针,其本质为指针,指针存放的是数组首地址的地址,相当于2级指针,这个指针不可移动。

指针数组是数组元素为指针的数组,其本质为数组。指针数组常适用于指向若干字符串,这样使字符串处理更加灵活方便。

指针数组和数组指针的区别

1、性质不同

指针数组:首先它是一个数组,数组的元素都是指针,它是“储存指针的数组”的简称。数组指针:首先它是一个指针,它指向一个数组,它是“指向数组的指针”的简称。

2、字节不同

数组占多少个字节由数组本身的大小决定,每一个元素都是一个指针,在32位系统下任何类型的指针永远是占4个字节。

数组指针在32位系统下任何类型的指针永远是占4个字节,至于它指向的数组占多少字节,不知道,具体要看数组大小。

3、表示方法不同

指针数组:数组a中的元素都为int型指针;数组指针:指向数组a的指针。

4、变量不同

指针数组:指针数组可以说成是”指针的数组”,这个变量是一个数组。

数组指针:数组指针可以说成是”数组的指针”,这个变量是一个指针。

指针数组与指向指针的指针有什么区别

他们的区别是:指针数组,表示的是一个由指针变量组成的数组也就是说其中的元素都是指针变量,而数组指针表示的是这是个指向数组的指针。

那么该指针变量存储的地址就必须是数组的首地址得是个指向行的地址,比如a[3][4]数组中的 a,a+2 等,不能是具体的指向列的地址,如 &a{2][1], &a[2][1] 这类地址。

指针数组:

指针数组可以说成指针的数组,这个变量是一个数组。其次指针修饰这个数组,意思是说这个数组的所有元素都是指针类型,在 32 位系统中指针占四个字节。

数组指针:

数组指针可以说成是数组的指针.这个变量是一个指针。其次数组修饰这个指针,意思是说这个指针存放着一个数组的首地址,或者说这个指针指向一个数组的首地址。

根据上面的解释可以了解到指针数组和数组指针的区别,因为二者根本就是种类型的变量。

什么是指针数组?

同志们他说的是指针数组不是数组指针。

指针数组就是说是一个数组,数组中的每一个成员是一个指针。举例如下:

char *a[5]={"tan","li","cheng","fang","zheng"};

定义指针数组a,存放姓名,a有5个成员,即a[5]是包含5个指针元素的指针数组,5个指针中每个的值是该字符串的首地址,也就是说

a[0]=字符't'的地址

a[1]=字符'l'的地址

a[2]=字符'c'的地址

a[3]=字符'f'的地址

a[4]=字符'z'的地址

为何要这样?因为各个名字是字符串不是单个字符,也就是说它相当于二维数组

tan

li

cheng

fang

zheng

也就是相当于有行有列,所以要找到数组中的某一个字符就要先找到所在的行即a[i],这里a[i]就是个指针指向每行的第一个字符的地址,*(a[i]+j)就是第i+1行第j+1个元素。也就是说

char *a[5]={"tan","li","cheng","fang","zheng"};

等价于定义

char a[5][6]={"tan","li","cheng","fang","zheng"};

只是对于字符串,函数strncpy,strcpy,strcmp,strlen,strcat,strstr,strchr的参数都是指针变量都是一个指向字符串首字符的地址的指针,故用指针数组表示一个二维数组更方便形象,有些数据结构复杂,用指针数组来指向它们,当要改变数据的顺序时只要改变指向它们的指针的顺序不必改变数据本身,这样可以简化问题。指针是个好东西,是c语言的精华。你只要好好看《谭浩强的c程序设计》就会完全明白。

相关推荐:

什么是指针数组

快速踩高跷的的技巧

什么是指导思想的多元化

雷吉米勒为什么会成为核心

临清哪里的羊汤好喝

什么是植物甾醇

临清市有几所高中

什么是植物的繁殖器官

标签: [db:标签]

声明:《什么是指针数组》一文由排行榜大全(佚名 )网友供稿,版权归原作者本人所有,转载请注明出处。如果您对文章有异议,可在反馈入口提交处理!

最近更新

  • 什么是指针数组

    在C语言语言中,数组元素全为指针的数组称为指针数组。指针数组可以作为函数的参量使用,使用方式与普通数组类似。数组指针是指向数组首元素的...

    百科 日期:2023-04-08

  • 快速踩高跷的的技巧

    1、一直走,别停,这样可以保持平衡。还有,记得刚开始学的时候要靠墙立白上去。不要出现跌倒的情况,踩高跷的时候一定要保持平稳,不同的路段排列的...

    百科 日期:2023-04-08

  • 织开衫毛衣怎么留扣眼

    我们在编织毛衣的时候,织到边子的地方都要留几个扣眼来扣扣子用。那怎样留扣眼呢,下面我们来学习留扣眼的方法。当我们织毛衣边的时候,需要留几...

    数码 日期:2023-04-08

  • 什么是指导思想的多元化

    所谓“多元化”,是有人认为是现代社会的重要标志,是放弃所谓的“正统”及一元化观念,废除“国家意识形态”或“国家哲学”,宣布“马克思主义只是...

    百科 日期:2023-04-08

  • 雷吉米勒为什么会成为核心

    因为雷吉米勒有强大的外线投射能力,可以对对手造成巨大的威胁,所以他可以成为球队的战术核心与战术发起者。雷吉米勒没有强壮的身体,跳得不高,跑...

    百科 日期:2023-04-08

  • 周星驰卖猪肉是哪部电影

    周星驰卖猪肉的剧情是电影《国产凌凌漆》里面的,影片中周星驰扮演的中国后备特工,但是一直都不被上司重用,然后就沦为猪肉贩子,但恰恰是卖猪肉...

    电影 日期:2023-04-08

  • 临清哪里的羊汤好喝

    1、临清正宗羊汤店,地址在山东省临清市315省道林城加油站旁。2、临清钱氏羊汤店,地址在山东省临清市飞驰路121号附近。3、钱家羊汤店,地址在山...

    百科 日期:2023-04-08

  • 为什么vivo手机耗电特别快

    以vivoz5为例,vivo手机耗电特别快的原因如下:1、留意信号强度。手机电量快速消耗的原因之一就是经常搜索微弱的信号。如果处于一个信号比较糟...

    互联网 日期:2023-04-08

百科排行榜精选

邮箱不能为空
留下您的宝贵意见