字符串&数组&指针

所谓数组,就是相同数据类型的元素按一定顺序排列集合

字符串:C语言中的字符串其实就是以空字符(\0)结尾的char数组

指针:指针也是一种数据类型,指针变量是用来存放地址值的。

1)指针的数值就是它所指向的对象的地址。

2)在指针前运用运算符*就可以得到指针所指向的对象的数值。

3)对指针加1,等价于对指针的值加上他指向的对象的字节大小。

联系:数组名同时也是该数组首元素的地址,即如果array是一个数组,则array==&array[0]为真。

对指针或数组名做加法:如果对指针+1的结果是指针指向下一个存储单元,对于数组名来说,它也会移动到下一个元素的地址。如:

如果array是数组,array + 1== &array[1] //同一个地址

                  *(array + 1) == array[1]  //相同的值

可以看出,数组是指针的变相使用形式,可以用指针标识数组的没个元素,并得到每一个元素的数值。

指针和多维数组:

假设有如下声明:

Int zippo[4][2];

数组名同时也会是数组首元素的地址,但是zippo的首元素本身又是包含两个int 的数组,因此zippo也是包含两个int数组的指针。

因为zippo是数组首元素的地址,所以zippo的值和&zippo[0]相同。Zippo[0]本身是包含两个整数的数组,因此zippo[0]的值和&zippo[0][0]相同。因为整数和两个整数组成的数组开始与同一个地址,因此zippozippo[0]具有相同的数值。

指针做函数参数是指针的一个重要使用,通过指针做形参,在对函数调用时,将实参的地址传递给指针,从而达到对想要操作的数据(比如数组)进行操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值