- 1
- 0
- 约2.31千字
- 约 23页
- 2017-11-12 发布于广东
- 举报
尚辅网 / C语言程序设计实用教程 第5章 指 针 第5章 指 针 5.1 概念5.2 指针变量的定义与引用5.3 指针变量的运算5.4 指针与数组5.5 指针与字符串5.6 指针数组与指向指针的指针5.7 习题 第5章 指 针 图5-1 地址与变量的对应关系 5.1 概念 5.1.1 变量的地址与变量的内容5.1.2 直接访问与间接访问 图5-2 指向变量x的指针变量 5.1.3 指针与指针变量 5.2 指针变量的定义与引用 5.2.1 定义5.2.2 引用1. 指针变量的初始化 图5-3 指针变量p指向变量x 1) 变量x的类型必须和指针变量p的类型一致,例如以下定义是非法的。 5.2 指针变量的定义与引用 2) 不允许把一个指针变量初始化为一个常数,下面的对指针变量p初始化也是非法的。2. 使用指针访问变量 图5-4 取ip为地址的存储区域中的内容 10 111) 如果已经执行了p = a;语句,则*p的含义是什么?2) *a含义是什么? 5.2 指针变量的定义与引用 图5-5 *与运算之间的关系 5.3 指针变量的运算 5.3.1 赋值运算1) 指针变量初始化赋值,前面已作介绍。2) 把一个变量的地址赋予指向相同数据类型的指针变量。3) 把一个指针变量的值赋予指向相同类型变量的另一个指针变量。4) 把数组的首地址赋予指向数组的指针变量。5) 把字符串的首地址赋予指向字符类型的指针变量。6) 把函数的入口地址赋予指向函数的指针变量。 图5-6 交换指针变量值前后的情况 5.3 指针变量的运算 5.3.2 算术运算(1) 指针变量与整数的加减运算(2) 指针变量的自加自减运算(3) 两个指针变量之间的相减运算5.3.3 关系运算 5.4 指针与数组 5.4.1 指针与一维数组1. 数组指针变量的定义2. 通过指针引用数组元素1) a[0] 一般的下标存取方法;2) *a a指向数组的首地址,*a即为取该地址处的内容;3) *p 因有p = a,*p即为取该地址处的内容。1) a[i] 一般的下标存取方法;2) *(a+i) a + i就是a[i]的地址,取该内存单元的值;3) *(p+i) p + i也是a[i]的地址,取该内存单元的值。 图5-7 指针与数组的关系 5.4 指针与数组 (1) 用下标法存取数组元素(2) 通过数组名输出存取数组元素(3) 用指针变量存取数组中的元素1) p++ p指向下一元素,即a[1]。2) *p++ 等价于先得到*p,然后p = p + 1。3) *(++p);*(p++) 等价于使p先加1,再取*p。4) (*p)++ 等价于先得到*p,然后将其值加1(p所指向元素的值加1),而不是指针值加1。5.4.2 指针与二维数组1. 二维数组的地址 图5-8 二维数组 5.4 指针与数组 2. 指向二维数组元素的指针变量0 1 2 310 11 12 1320 21 22 23 图5-9 二维数组行存储示意图 3. 指向二维数组的行指针变量 5.4 指针与数组 图5-10 指向二维数组的行指针示意图 5.5 指针与字符串 1. 指向字符串的指针变量 图5-11 指向字符串的指针变量说明 图5-12 字符串指针变量加运算说明 2. 使用字符串指针变量与字符数组的区别1) 字符串指针变量本身是一个变量,用于存放字符串的首地址。2) 对字符串指针方式: 5.6 指针数组与指向指针的指针 5.6.1 指针数组1 2 3 45 6 7 8 图5-13 指针数组与一维数组之间的关系 1 2 34 5 67 8 9 5.6 指针数组与指向指针的指针 图5-14 指针数组与二维数组之间的关系 5.6 指针数组与指向指针的指针 图5-15 用指针数组表示一组字符串 5.6.2 指向指针的指针 5.6 指针数组与指向指针的指针 图5-16 指向指针的指针变量示意图 1 3 5 7 9 5.6 指针数组与指向指针的指针 图5-17 指向指针数组的指针 1 2 34 5 6 5.6 指针数组与指向指针的指针 7 8 9 5.7 习题 一、 选择题1. 下列程序段的输出结果是( )。2. 下列程序的输出结果是( )。3. 下面程序的输出结果是( )。4. 以下程序的输出结果是( )。5. 设有int a[ ]={10,11,12},*p=a[0];则执行完*p++;*p+=1;后a[0],a[1], 的值依次是( )。6. 设有说明int s[2]={0,1},*p=s; 则下
您可能关注的文档
- 人力资源管理课件作者刘子龙张颖昆主编02第二章节人力资源规划.ppt
- C语言程序设计(第二版)电子教案第6章节指针.ppt
- C语言程序设计(第二版)课件作者刘加海朱云其第二章节.ppt
- 人力资源管理课件作者刘子龙张颖昆主编03第三章节工作分析.ppt
- C语言程序设计(第二版)课件作者刘加海朱云其第九章节.ppt
- C语言程序设计(第二版)课件作者刘加海朱云其第六章节第六章节.ppt
- C语言程序设计(第二版)课件作者刘加海朱云其第四章节第四章节.ppt
- 人力资源管理课件作者刘子龙张颖昆主编07第七章节绩效管理.ppt
- C语言程序设计(第二版)课件作者刘加海朱云其第五章节第五章节.ppt
- C语言程序设计(第二版)课件作者王曙燕章节ap7函数.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- SJ∕T 10460-2016 太阳光伏能源系统图用图形符号.pdf
- 新求精德语强化教程(第4版)初级1课后练习答案(改进版) .pdf VIP
- 北师大版三年级下册数学全册教学设计(配2026年春改版教材).docx
- (2026年)跌倒坠床护理综合指南PPT课件.pptx VIP
- 工程设计应急响应方案(3篇).docx VIP
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
原创力文档

文档评论(0)