24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 1809  |  回复: 7

mnz119

新虫 (正式写手)


[交流] 本人对指向指针的指针和指针数组的心得体会

指针是C/C++的精华所在也是重点难点所在,如果你掌握了指针数组,数组指针,指向指针的指针这些深层次的概念,那么说明你已经掌握了大部分指针的内涵,我从业余的角度谈谈我对指向指针的指针的总结,因为网上有关于操作数据是针对字符串类型的,我现在举例的是整形类型。仅供学习交流之用,如有误导,欢迎拍砖。
请看下面我编写的代码
//=========================================指向指针的指针练习(针对整型数据)
int main()
{
int b=2,c=3,d=4;
int *p1,*p2,*p3;
p1=&b;
p2=&c;
p3=&d;
int i;
int *num[]={p1,p2,p3};//num是一个指针数组,每一个元素是指向整形数据的指针类型,或者说每一个元素都是指针型数据,
                      //这种数据的值是地址,都是指向整形的的数据。因此其实num的每一个元素都是指向指针类型的指针
int **pt;   //定义这么一个变量,存放的是指针数组的元素,这个变量为指向指针的指针变量,可以指向值为地址的不同的变量(指针变量)

pt=num;
for(i=0;i<3;i++)
{
cout<<pt<<" "<<*pt<<" "<<**pt<<endl;//注意了,pt代表的是它所指向的变量的地址,也就是开辟的三个指针变量p1,p2,p3的在内存当中的地                      //址(至于代表哪个就要看当前的指向了)
pt++;                  //而*pt代表的是pt存储的变量的值,假如pt当前指向的变量为p1,那么*pt就是变量p1的值,而事先
                       //已经将b的地址给了p1这个变量(存放地址的变量),因此*pt其实就是b这个变量的地址(*pt等同于&b)
                       //对*pt在做一次指针运算*,也就是**pt,那么就使得*pt这个指针指向了b所对应的存储单元的内容也就是2.
}

return 0;
}

总结:
指向指针的指针,可以这样理解,首先指向指针的指针可以把他看成一种特殊的变量,既然是变量就可以存储不同的元素,比如整形变量int a,a可以存储2,3,4这种普通的整型数据,只要将值付给a就行了,但指向指针的指针所存的元素比较特殊,存放的元素一般是存放地址的指针变量,比如我有三个指针变量,int *p1,*p2,*p3,那么我可以定义一个特殊的变量 int **p,我可以将p1的地址付给p,也可以将p2的地址付给p.比如p=&p1,(类似于int a,int *t,t=&a),那么p就代表了他所指向的变量p1或者p2的地址,而p所指向的变量是一个指针变量,*p代表着这个指针变量里面的值(注意值实际上是一个地址),**p代表着它所指向的指针变量的内容(地址)所指向的存储单元的内容(数值)。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

散漫守望

银虫 (正式写手)



mnz119(金币+1): 谢谢参与
很好!

[ 发自小木虫客户端 ]
2楼2013-11-27 00:23:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mnz119(金币+1): 谢谢参与
看不懂

[ 发自小木虫客户端 ]
3楼2013-11-27 00:46:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lenovo001

禁虫 (正式写手)


mnz119(金币+1): 谢谢参与
本帖内容被屏蔽

4楼2013-11-27 04:53:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baobiao007

木虫 (职业作家)



mnz119(金币+1): 谢谢参与
引用回帖:
4楼: Originally posted by lenovo001 at 2013-11-27 04:53:30
学完了C++得这些基本知识,包括OOP,STL,模板,继承等后,没有了方向感,有没有好的建议,求指导!

写个实用的软件,可以结合某种专业需要。否则,这些零碎的语法知识始终无法应用起来,也体会不到他们的作用。
5楼2013-11-27 16:01:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mnz119

新虫 (正式写手)


引用回帖:
3楼: Originally posted by kiss20085537 at 2013-11-27 00:46:57
看不懂

写得可能有点啰嗦,但是都是上机验证过的,希望能与你交流交流
6楼2013-11-29 15:55:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yangdean1024

新虫 (初入文坛)



mnz119(金币+1): 谢谢参与
,比较绕。
7楼2014-02-27 14:21:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qiange0316

新虫 (初入文坛)



小木虫: 金币+0.5, 给个红包,谢谢回帖
解释的比较详细,谢谢!支持一下
8楼2014-07-21 15:24:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 mnz119 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 291求调剂 +4 关忆北. 2026-04-14 4/200 2026-04-15 10:49 by shenshen207
[考研] 22408 312求调剂 +16 门路摸摸 2026-04-14 17/850 2026-04-14 23:59 by Xurambo2014
[考研] 085404 22408 309分求调剂 +7 lzmk 2026-04-14 7/350 2026-04-14 17:02 by lihaoda1994
[考研] 生物学调剂 +7 纸扇zhishan 2026-04-13 7/350 2026-04-14 14:21 by jyl0317
[考研] 085404 298分求调剂 +11 呼啦呼啦呼呼呼 2026-04-10 12/600 2026-04-14 08:38 by wfj257
[考研] 302求调剂 +10 易!? 2026-04-13 10/500 2026-04-13 19:04 by lbsjt
[考研] 一志愿鲁东大学071000生物学学硕初试分数276求调剂 +8 慕绝cc 2026-04-09 8/400 2026-04-13 14:08 by 张zhihao
[考研] 生物学调剂 +11 小冉要努力 2026-04-10 13/650 2026-04-13 11:46 by 电化学及催化
[考研] 一志愿0807 数一英一 313 有没有二轮调剂 +12 emokidd 2026-04-08 13/650 2026-04-13 08:32 by lhj2009
[考研] 346分,工科0854求调剂,专硕 +6 moser233 2026-04-12 7/350 2026-04-12 22:11 by fqwang
[考研] 药学专硕调剂 +8 ? 一路生?花? 2026-04-10 10/500 2026-04-11 21:21 by zhouxiaoyu
[考研] 359求调剂 +5 胃痉挛累了 2026-04-11 5/250 2026-04-11 19:55 by lbsjt
[考研] 085501机械专硕 302分 不挑专业求调剂 +7 汪某. 2026-04-09 7/350 2026-04-11 14:37 by luhong1990
[考研] 283求调剂,工科! +12 苏打水7777 2026-04-08 12/600 2026-04-11 10:28 by 逆水乘风
[考研] 工科273调剂 +6 X1999 2026-04-09 7/350 2026-04-11 10:23 by zhq0425
[考研] 297求调剂 +9 Kwgyz 2026-04-09 9/450 2026-04-11 10:09 by zhq0425
[考研] 293求调剂 +6 勇远库爱314 2026-04-08 6/300 2026-04-11 10:08 by zhq0425
[考研] 吉大计算机技术331分,英语六级,求调剂 +3 峰峰021116 2026-04-09 3/150 2026-04-10 20:01 by chemisry
[考研] 298求调剂 +13 钉叮咚冬瓜 2026-04-09 13/650 2026-04-10 15:49 by jiajinhpu
[考研] 软件工程求调剂22软工296分求调剂,接受跨调 +4 yangchen2017 2026-04-08 5/250 2026-04-08 21:56 by 土木硕士招生
信息提示
请填处理意见