- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
vc指针
第8章 指针和引用 指针和指针变量 指针和数组 指针和函数 指针和引用 简单链表 * * 8.1 指针和指针变量 1. 内存地址 2.变量地址 一、指针的概念 2018 5 2018 2010 2011 2012 2013 2000 2001 2002 2003 ‘a’ x char int、float 指针 变量地址(指针) ch int int x; char ch; x=5; ch=‘a’; 注意:内存单元的地址与内存单元中的数据是两个完全不同的概念。 存放指针的变量为指针变量 … … p 二、指针变量的定义及初始化 类型名 *指针变量名; 指针变量的标志 2018 5 2018 2010 2011 2012 2013 2000 2001 2002 2003 ’a’ x ch p char *p; int x; char ch; x=5; ch=’a’; p=ch; “”运算符:取变量的地址 p1 2010 int *p1=x; p 2018 … … 方法 1: 三、指针变量的赋值 将变量的地址赋值给指针变量 int x=10, *p1 = x; // 将指针变量p1指向变量x 方法 2: 同类型的指针变量相互赋值 int *p2,*p3; p2 = x; // 将指针变量p2也指向变量x p3=p2; // p3与p2,p1指向同一内存 2000 2001 2002 2003 x p1 2000 p2 2000 p3 2000 10 方法 3 : 用系统常量标识符NULL(为0)给指针变量赋值 int *p; p=NULL; 0x0012FF7C 0x0012FF7D 0x0012FF7E 0x0012FF7F p1 危险! 方法 4 : 将整型常量强制类型转换成指针后,赋值 int *p1= (int *)0x0012FF7C; // 与 p=0;等价 使指针指向安全位置 四、内存中数据的存取 直接访问:通过变量名直接访问。 间接访问:在一个变量(指针)中存放数据的地址,然 后通过该地址访问。 int a=5, *p = a; couta; cout*p; 取内容运算符:取指针 指向的内存中的数据 2000 2001 2002 2003 变量a 指针p 2000 5 指针与指针变量的比较 (1)指针──即地址。 一个变量的地址称为该变量的指针。通过变量的指针能够找到该变量。 (2)指针变量──专门用于存储变量地址的变量。 指针变量的值就是变量的地址。 指针与指针变量的区别,就是变量值与变量的区别。 课堂练习: 设有变量定义 int a=10; 试定义一个指针变量p,并通过该指针变量使a的值加倍。 int *p=a; *p=*p*2; 五、指针的算术运算 仅限于指针的加、减运算。 指针加或减一个整数n表示指针指向当前内存中相邻的同类型的数据的后面第n个或前面第n个数。 指针的算术运算一般用于指向数组中的特定元素。 六、指针的关系运算 关系运算符“==”或“!=”用于比较两个指针是否指向同一内存地址; 其它关系运算符则主要用于比较同一数组中两个指针所指向元素的先后次序关系。 一个数组有若干个元素,这若干个元素在内存中占据着相邻的地址,而指针就是通过地址来处理数据的,因此,指针和数组的关系比较密切。 8.2 指针和数组 指针变量的值是可以改变的 数组名为整个数组的首地址,可作为一个指针,是一个常量 8.2.1 一维数组与指针 定义了一个数组后,如果再定义一个同类型的指针变量,并且使该指针指向数组的第一个元素,则就可以用该指针来代替数组名使用. int a[6] ={ 0, 1, 2, 3, 4, 5 }, *p; p=a; p[i]与a[i]都有可以表示数组a的第i个元素。 思考: 1. 当p的值发生变化时,如p+=2运算后,p[i]和a[i]是否还 指向同一个值 ? 2. 还有其他方法将指针p指向数组a吗 ? 3. 如果另有指针变量定义float *p1; 能用p1来操作数组a 吗 ? 例:将字符串反序输出 算法分析: 3. 输出字符串 2. 将字符串反序处理 1. 输入字符串 用cin或cin.getline()实现 2.1 设置两指针p1、p2,使p1指向字符串的第一个字符、p2指向字符串的最后一个字符; 2.2 交换p1、p2指向的字符;p1、p2指针分别向字符串中间移动一个元素位 2.3 重复2.2,直到p1= =p2 或p1p2 字符串的特点是其字符
您可能关注的文档
- Unit1 Don’t cross that rope!.ppt
- U2N1 新时代,新生活.ppt
- 中医老年病学-心律失常概要.ppt
- Unit2_Using_language_知识点课件.ppt
- 中医药与保健概要.ppt
- Unit3 My weekend B let’s talk.rar.ppt
- 中医药与老年病概要.ppt
- 中医药事业发展和创新概要.ppt
- 中医膳食与食疗养生第九讲痛经概要.ppt
- 中医药养生概要.ppt
- 2026年高考英语总复习讲义教师用书选择性必修第二册.pdf
- 2026年高考英语总复习讲义教师用书选择性必修第一册.pdf
- 2026年高考英语总复习讲义教师用书选择性必修第四册.pdf
- 2026年高考英语总复习讲义教师用书必修第一册.pdf
- 第13课 现代交通运输的新变化(任务型教学课件)-2025-2026学年高中历史选择性必修2(统编版).pptx
- 2.磁感应强度 磁通量-2025-2026学年高中物理必修第三册(人教版2019).pptx
- 4.2 携手促发展(教学课件)-2025-2026学年九年级道德与法治下册(统编版五四学制).pptx
- 专题02 光现象(培优讲义)(原卷版)(5考点 4实验 8命题突破 2个难点)-2026年中考物理一轮复习讲练(全国通用).docx
- 第三节 碳达峰与碳中和(教学课件)-2025-2026学年八年级化学全一册(鲁教版五四学制2024).pptx
- 中考作文之材料作文审题立意(解析版)-2026年中考语文一轮复习微专题讲练(湖南通用).docx
最近下载
- 7080后怀旧老课本-小学数学-第1册.pdf VIP
- 2025年广东省春季高考高三英语模拟试卷试题(含答案).docx VIP
- [(精华版)最新国家开放大学电大《建筑材料(A)》机考终结性9套真题题库.docx VIP
- 太原科技大学2022-2023学年《马克思主义基本原理概论》期末考试试卷(A卷)含参考答案.docx
- 蒂森MC2-H(MHC2主板) 1. ECOR控制系统 9.6.3 调试手册.pdf
- 太原科技大学2023-2024学年《马克思主义基本原理概论》期末考试试卷(A卷)含参考答案.docx
- 2025年福建省综合性评标专家库评标专家考试历年参考题库含答案详解.docx VIP
- TCCFAGS 037-2023 现制茶饮门店食品安全自查指引.pdf VIP
- 2024年福建省综合性评标专家库评标专家考试练习题及答案.docx VIP
- 太原科技大学2024-2025学年《马克思主义基本原理概论》期末考试试卷(A卷)含参考答案.docx
原创力文档


文档评论(0)