C++“指针”学习建议

VIP免费
2024-12-10
2
0
263KB
32 页
5.9玖币
侵权投诉
一.对于众多人提出的 c/c++中指针难学的问题做个总结:
指针学习不好关键是概念不清造成的,说的简单点就是书没有认真看,指针的学习犹如人在学习饶口令不多看多
学多练是不行的,下面是两个很经典的例子,很多书上都有,对于学习的重点在于理解*x 和 x 的理解,他们并不相同,
*x 所表示的其实就是变量 a 本身,x 表示的是变量 a 在内存中的地址,如果想明白可以输出观察 cout<<*x"|"x;,当定
义了 int *x;后对 x=&a 的理解的问题。仔细阅读和联系下面的两个例子我想指针问题就不是难点了!
#include…<stdio.h>… …
main()…
{…
int…a,b;…/*…定义 a,b 两个整形变量用于输入两个整数…*/
int…*point_1,*point_2,*temp_point;…/*…定义三个指针变量…*/
scanf("%d,%d",&a,&b);…/*…格式化输入 a,b 的值…*/
point_1=&a;…/*…把指针变量 point_1 的值指向变量 a 的地址…*/
point_2=&b;…/*…把指针变量 point_2 的值指向变量 b 的地址…*/
if…(a<b)…
{…
…………temp_point=point_1;…/*…这里的 temp_point 是用于临时存储 point_1 的值也就是变量 a 的地址的…*/
…………point_1=point_2;…/*…把 point_2 的值赋予 point_1…*/
…………point_2=temp_point;…
…………/*…由于 point_1 的值已经改变无法找到,利用前面临时存储的也就是 temp_point 找回原 point_1 的值赋予
point_2,打到把 point_1 和 point_2 值对换的目的*/
}…
printf("%d,%d",*point_1,*point_2);…/*…利用*point_1 和*point_2 也就是分辨指向 b 和 a 的方法把值显示屏幕上…
*/
}… …
/*…此题需要注意和了解是的此法并没有改变变量 a,b 的值只是利用指针变量分别存储 a 和 b 的地址,然后再把那两个
指针变量的值对换一下其实就是存储在指针变量里面 a 与 b 的地址对换,在利用*point_1 和*point_2 的方式把调换后的
值显示出来这里的*point_1 实际就是 a,此中算法并非真的改变 a,b 的值,而是利用指针进行地址交换达到大小排序的目
的.…*/
#include…<stdio.h>…
main()…
{…
int…a,b;…/*…定义 a,b 两个整形变量用于输入两个整数…*/
int…*point_1,*point_2;…/*…定义三个指针变量…*/
scanf("%d,%d",&a,&b);…/*…格式化输入 a,b 的值…*/
point_1…=…&a;…/*…把指针变量 point_1 的值指向变量 a 的地址…*/
point_2…=…&b;…/*…把指针变量 point_2 的值指向变量 b 的地址…*/
compositor(point_1,point_2);…/*…调用自定义的排序涵数,把 a,b 的地址传递给 point_1 和 point_2…*/
printf("%d,%d",a,b);…/*…打印出 a,b 的值…*/
}…
static…compositor(p1,p2)…
int…*p1,*p2;…/*…定义形式参数 p1,p2 为指针变量…*/
{…
int…temp;…/*…建立临时存储变量…*/
…………if…(*p1<*p2)…/*…如果*p1<p2,注意这里的*p1 和*p2 其实就是 a 和 b…*/
…………{…
……………………temp…=…*p1;…/*…利用变量 temp 用于临时存储*p1 和就是 a 的值…*/
……………………*p1…=…*p2;…/*…将*p1 的值也就是 a 的值换成*p2 的值也就是 b 的值,等价于 a=b…*/
……………………*p2…=…temp;…/*…将*p2 的值也就是 temp 的值等价于 b=temp…*/
…………}…
}… …
/*…注意:此题与上题不同的是,直接改变了 a 于 b 的值达到真实改变的目的…*/
二.C++指针使用方法解惑
“void ClearList(LNode * & HL)”
摘要:
展开>>
收起<<
一.对于众多人提出的c/c++中指针难学的问题做个总结: 指针学习不好关键是概念不清造成的,说的简单点就是书没有认真看,指针的学习犹如人在学习饶口令不多看多学多练是不行的,下面是两个很经典的例子,很多书上都有,对于学习的重点在于理解*x和x的理解,他们并不相同,*x所表示的其实就是变量a本身,x表示的是变量a在内存中的地址,如果想明白可以输出观察cout
声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
相关推荐
-
VIP免费2024-12-06 3
-
VIP免费2024-12-06 4
-
VIP免费2024-12-06 18
-
VIP免费2024-12-06 14
-
VIP免费2024-12-06 16
-
VIP免费2024-12-06 8
-
VIP免费2024-12-06 19
-
VIP免费2024-12-06 8
-
VIP免费2024-12-06 22
-
VIP免费2024-12-06 11
分类:计算机
价格:5.9玖币
属性:32 页
大小:263KB
格式:DOC
时间:2024-12-10
作者详情
-
IMU2CLIP MULTIMODAL CONTRASTIVE LEARNING FOR IMU MOTION SENSORS FROM EGOCENTRIC VIDEOS AND TEXT NARRATIONS Seungwhan Moon Andrea Madotto Zhaojiang Lin Alireza Dirafzoon Aparajita Saraf5.9 玖币0人下载
-
Improving Visual-Semantic Embedding with Adaptive Pooling and Optimization Objective Zijian Zhang1 Chang Shu23 Ya Xiao1 Yuan Shen1 Di Zhu1 Jing Xiao25.9 玖币0人下载
相关内容
-
主题班会:责任与我同行(1)
分类:中学教育
时间:2025-06-01
标签:无
格式:PPT
价格:10 玖币
-
主题班会:责任——我们共同的需要ppt
分类:中学教育
时间:2025-06-01
标签:无
格式:PPT
价格:10 玖币
-
主题班会:预防爱滋病
分类:中学教育
时间:2025-06-01
标签:无
格式:PPT
价格:10 玖币
-
主题班会:远离毒品,珍爱生命ppt1
分类:中学教育
时间:2025-06-01
标签:无
格式:PPT
价格:10 玖币
-
韶关市2024届高三综合测试(一)英语答案
分类:中学教育
时间:2025-06-05
标签:无
格式:PDF
价格:10 玖币