咖趣阁

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

第四十九章 指针四(第1页)

但凡涉及到和内存相关的知识时,老爹都会使用ppt绘制图形来辅助讲解。

如果没有那些图的话,理解起来还是有一些困难。

「就然说到这里,就顺便提一下指针的自加和自减。

我们先回顾一下普通变量的自加和自减:

inta=10;

对于a等效于a=a1,a--等效于a=a-1。

那么对于指针变量

int*p=&a;

来说也是一样的

p等效于p=p1,p--等效于p=p-1。

而我们刚刚才说过,对指针做加减运算,实际上是按照指针指向的数据类型为单位上下移动,如果我们再配合*的话,也可以对数组进行赋值或者取值,你比如说:

intarr[5];

int*p=arr;

inti=sizeof(arr)sizeof(arr[0]);

while(i-->0)

{

scanf(%d,p);

}

注意这里面有个两个需要关注的地方,首先是老爹用sizeof来获取了一个数组占用内存的字节数,如果这个地方换成sizeof(p)话,只会得到p这个变量占用的内存字节数,这是指针和数组名的区别之一。

第二点,数组名是不可以做自加和自减操作的,不信你们可以把scanf函数中的p换成a,绝对会出错。

虽然老爹无比笃定,但本着不「事不目见耳闻而臆断其有无」的原则,我尝试了一下,果然是报错了。

「那为什么会这样呢?」

「这个嘛,老爹也没有看到过c语言是如何管理数组的,但是老爹猜测,arr是一个被const修饰的指针,何以见得?如果我们对变量p进行如下修改,就会发现p也不能执行自加自减操作了。

int*constp=arr;」

「const会将一个变量变成常量,如果修饰一个指针是不是指针也变成了常量?」

一直都沉默不语的小弦子出声问道。

「的确是这样,和普通变量一样,一个指针变量被const修饰后就变成了一个指针常量,那么我们就只能为其初始化一次,就不能再修改这个指针指向的地址了。

例如:

inta=0;

intb=1;

int*constp=&a;

p=&b;

在执行最后一行代码的时候肯定会出错,因为指针变量被const修饰,并且已经为其赋值为变量a的地址了,就不能再做修改,这个应该看得懂吧?」

热门小说推荐
足球超神系统

足球超神系统

崔朕穿越平行世界,在足球超神系统的帮助以及自身卓绝努力下,带领华夏的梦之队成为世界冠军的传奇故事。德尼尔森的神级踩单车,贝克汉姆的贝式弧线,卡努的蝴蝶步,小儒尼尼奥的完美任意球,齐达内的马塞轮转,巴蒂GOAL,梅西的千里走单骑。凌空抽射倒挂金钩远距离吊射鱼跃冲顶脚后跟射门众多技能加持于身,崔朕用自己的双脚谱写了一幕幕的传奇神话。...

上头

上头

有人说顾明云是个麻辣牛油火锅般的女人,还有人说贺黎是一个极为执着的理想主义者,多年以后,当顾明云跟贺黎提起这句评价时,他莞尔道这就是你让我欲罢不能的原因吗?人为了梦想会有多拼命?这个问题问贺黎就最合适不过了,当歌唱成为生命,他可以付出全部。一脚踏进娱乐圈,他没有退缩的资格,在上万人的欢呼声中,他淡然处之,因为只有他自己知道为此他失去了什么。当初出茅庐的顾明云高呼着为爱,为梦想!的口号时,当她站在黑暗里仰望着舞台上发光的贺黎时,彼时的她怎么也想象不到未来她会站在代表荣誉的领奖台上,站在贺黎的身边。...

美漫生存指南

美漫生存指南

高飞卡在漫威世界里出不来了,只有死亡才能强制退出。但坑爹的系统不允许高飞无缘无故作死,只允许高飞为了正义英勇牺牲!于是在漫威世界里,多了一个到处挑衅反派的...

赵峰赵雪

赵峰赵雪

甜宠新书天眼通主之王是快餐店最新写的一本玄幻科幻风格的小说,故事中的主角是赵峰赵雪,情节引人入胜,非常推荐。主要讲的是他意志坚韧,不甘平庸,却资质平平,出自卑微的支族。一次意外,他融合一只太古神灵的眼睛,从此鲤鱼跃龙门,如彗星般崛起,踏上传奇修行之路。从渺小蝼蚁的世界底层,步步生莲,踏入这个宗门林立天才如云远古万族神话争锋波澜壮阔的大时代。...

中华大帝国

中华大帝国

神州大地翻天覆地,史诗般壮观的雄伟战役,让敌人的尸骨堆成自己不世的英名。狡猾强大的对手,正好作为自己施展能力的对象。一切一切,尽在中华大帝国...

豪门霸婿

豪门霸婿

作者零度拉面的经典小说豪门霸婿最新章节全文阅读服务本站更新及时无弹窗广告小说豪门霸婿郎战,一个被人鄙视的上门女婿,没有人想到他竟然是顶级家族的继承人。狼走遍天下吃肉,那些打不垮他的人,终究会被他踩在脚底下,摩擦!...

每日热搜小说推荐