笔趣阁

手机浏览器扫描二维码访问

第四十八章 指针三(第2页)

但是它也有让人抓狂的时候,一旦指针出问题,可能让你抓破脑袋也想不明白问题出在哪儿。放心,以后你们都会遇到的。」

老爹神秘地笑了笑。

「现在的内容还能听懂么?」

「嗯~」

「好,能听懂的话我们就进行下部分内容——指针和数组的结合使用,睁大你们的眼睛看清楚了:

inta[]={1,2,3,4,5};

int*p=a;

看到没,我现在把一个int数组赋值给了一个指向int类型的指针,你们大胆地猜测一下会不会出错?」

「呵呵,我才懒得猜,把代码写出来编译一下不就知道会不会出错了么?」

我都被自己的机智感动了,当然了,这是因为我有所依仗。这一来嘛,区区两句代码而已,二来就是我打字速度快啊!

一顿操作猛如虎,编写、编译分分钟搞定。

「咦,还真的可以啊!」

「所以啊,记住,一个数组的数组名,就是这个数组的指针地址,也是数组首个元素的地址,换言之,上面的代码这句等效:

int*p=&a[0];

既然我们都已经拿到一个数组的指针地址了,那么接下来就可以对它的元素进行任意读写操作了。不过有一点要记住,一定不能超过数组的上下限,不然你就死翘翘!

我们可以利用指针来获取元素,或者给元素赋值:

for(inti=0;i<5;i)

{

printf(“%d,%d,%d“,a[i],p[i],*(pi));

}

来来来,猜猜结果,猜中了有奖励哦!」

「哈哈,它们输出的内容是相同的!」

老爹话音刚落,我这边就已经看到了运行结果。

「嘿,任灵玥同学,你这么喜欢敲代码是吧,信不信我让你手写50遍!」

老爹做出一副很凶的样子说道。

「没错,它们输出的内容的确是相同的,那是因为它们的作用一模一样。刚刚我说了,数组名就是一个数组的指针地址,既然可以用a[i]来获取元素值,我们把a赋值给了p,那么p当然也是可以这样操作的。

至于p1嘛,是将指针指向的位置往从前位置移动一个单位。注意,这里的单位就和指针的指向的数据类型有关系了,如果指针指向的数据类型是一个int,那么它指向的就是下一个int数据,是double的话,就移动到下一个double数据。

换句话说,*(pi)等效于p=(int*)((int)pi*4)。

我们首先把p的值,也就是一个地址值转换成int类型,假设数组a在内存中的地址是1234,pi其实就是执行了1234i*4,然后再把这个值,那么*(pi)自然就是取的起始地址为1234i*4这个int数据的值了。

而a[0]的地址是1234;

a[1」的地址是12341*4;

a[2」的地址是12342*4;

a[3」的地址是12343*4;

a[4」的地址是12344*4;

热门小说推荐
重生世家子

重生世家子

原书名重生红三代四九城内,被称为太子党中最窝囊的私生子,聂振邦不堪重负终于自杀了,却重生回到了和父亲相认之前的那一刹那。悲剧是否还会重演?赫赫有名的红三代还能在四九城成为无人不知无人不晓的存在么?家道中落,这一世,聂振邦还会让历史重演吗?私生子也有掌控家族的那一天么?...

七冠王

七冠王

2018年起点第一部足球精品足球冠军系统附体,卢文斌化身冠军收割者。从德乙到德甲,从联盟杯到欧冠,卢文斌就是冠军的保证。他在俱乐部的终极目标,是在英超...

都市绝世仙帝

都市绝世仙帝

绝世仙帝重回都市,身怀无上医经绝世仙典。财富?地位?美人?这些不过是袖手可得的浮云罢了。这一世,唐昊志在仙道,步步登天,弹指碎青云!...

君临天下(陈毅沈悦然)

君临天下(陈毅沈悦然)

西方黑暗世界十二君王之一,暴君大人,一手创立的君王殿,傲立于西方黑暗世界,谁人听到暴君二字不闻风丧胆,却甘愿为了一个女人,放弃唾手可得的天下...

台湾娱乐1971

台湾娱乐1971

林清霞我们很早就认识啦,高中的学校有在一条街上!邓丽君梓钧是我见过最有音乐天赋的人。古龙小王酒量不错。琼瑶我很喜欢他小说中的爱情。倪匡我以为自己一小时写4500字已经很快了,直到认识了王梓钧赵雅芝很感谢他把我带进演艺圈。看了好多写香港的写好莱坞的写韩国的重生小说,我来试试写一下台湾吧。...

异能高手

异能高手

关于异能高手砰!车子撞在周宇的后背上,巨大的力量一下子就将他和那个美女撞飞了出去。轰!!一道四五米粗的闪电击中了尚在空中的两人。白光一闪,两人竟是消失在了那处空间!...

每日热搜小说推荐