- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对于众多人提出的c/c++中指针难学的问题做个总结: 指针学习不好关键是概念不清造成的,说的简单点就是书没有认真看,指针的学习犹如人在学习饶口令不多看多学多练是不行的,下面是两个很经典的例子,很多书上都有,对于学习的重点在于理解*x和x的理解,他们并不相同,*x所表示的其实就是变量a本身,x表示的是变量a在 HYPERLINK /Class/Memory/ \t _blank 内存中的地址,如果想明白可以输出观察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?(ab)? {? ????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)?/*?如果*p1p2,注意这里的*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的值达到真实改变的目的?*/
您可能关注的文档
- 《数据库原理和应用》试题二.doc
- become,get,go,grow,run,turn等系动词辨析与搭配用法.doc
- 《数据库原理与应用》课堂练习SQL查询.doc
- BeginInvoke与EndInvoke方法.doc
- 《数字逻辑(技术)》习题与补充题_2007_学生版.doc
- BIOS设置图解教程(AWARD BIOS与AMI BIOS).doc
- BOM定义与分类.doc
- 《网页设计和制作》第2章2014-11-11 10.3.48.ppt
- 《网站设计和开发》课程设计报告.doc
- BPS室内与商业LED照明驱动技术20110903.ppt
- 2024年绥化绥棱县事业单位招聘真题.docx
- 2025甘肃张掖市民乐县招聘教师10人模拟试卷及参考答案详解1套.docx
- 2025河南民航发展投资集团有限公司招聘28人考前自测高频考点模拟试题含答案详解.docx
- 2024年菏泽郓城县产业投资发展集团有限公司招聘笔试真题.docx
- 2025北京化工大学化工资源有效利用全国重点实验室招聘1人考前自测高频考点模拟试题及答案详解1套.docx
- 2025河南郑州航空港投资集团面向社会招聘25名考前自测高频考点模拟试题带答案详解.docx
- 2025广西南宁市青秀区委统战部招聘1人模拟试卷及参考答案详解1套.docx
- 2024年衢州市龙游县招聘卫生专业技术人员笔试真题.docx
- 2025福建厦门市集美区宁宝幼儿园产假顶岗教师招聘1人模拟试卷参考答案详解.docx
- 2024年绵阳师范学院招聘真题.docx
文档评论(0)