
指针及其应用
指针及其应用

指针及其应用 目标要求 掌握指针的概念、定义。 自标要求 掌握指针变量的使用。 掌握指针在函数中的运用。 讲课提纲 掌握指针的运算。 ■掌握指针在数组中的运用。 讲课内容 课后作业
目标要求 课后作业 讲课提纲 讲课内容 指针及其应用 ◼ 掌握指针的概念、定义。 ◼ 掌握指针变量的使用。 ◼ 掌握指针在函数中的运用。 ◼ 掌握指针的运算。 ◼ 掌握指针在数组中的运用。 目标要求

指针及其应用 讲课提纲 基本概念 自标要求 指针的定义和引用 指针与数组 讲课提纲 指针与字符串 小结 讲课内容 课后作业 课后作业
目标要求 课后作业 讲课提纲 讲课内容 指针及其应用 基本概念 指针的定义和引用 指针与数组 指针与字符串 小结 课后作业 讲课提纲

指针及其应用 ● C程序设计中使用指针可以: 自标要求 有效地处理数组,字符串 讲课提纲 有效地处理复杂的数据结构 扩展函数的功能 讲课内容 对内存实行动态分配 课后作业
目标要求 课后作业 讲课提纲 讲课内容 指针及其应用 C程序设计中使用指针可以: ◼有效地处理数组,字符串 ◼有效地处理复杂的数据结构 ◼扩展函数的功能 ◼对内存实行动态分配

指针及其应用 1.内存地址一内存中存储单元的编号 自标要求 (1)计算机硬件系统的内存储器中,拥有大 量的存储单元(每个存储单元容量为1字 节)。为了方便管理,必须为每一个存储单 讲课提纲 元编号,这个编号就是存储单元的“地址” 每个存储单元都有一个惟一的地址。 讲课内容 (2)在地址所标识的存储单元中存放数据。 注意:内存单元的地址与内存单元中的数据是 两个完全不同的概念。 课后作业 ■2变量地址一系统分配给变量的内存单 元的起始地址
目标要求 课后作业 讲课提纲 讲课内容 指针及其应用 ◼ 1.内存地址──内存中存储单元的编号 (1)计算机硬件系统的内存储器中,拥有大 量的存储单元(每个存储单元容量为1字 节)。为了方便管理,必须为每一个存储单 元编号,这个编号就是存储单元的“地址” 。 每个存储单元都有一个惟一的地址。 (2)在地址所标识的存储单元中存放数据。 注意:内存单元的地址与内存单元中的数据是 两个完全不同的概念。 ◼ 2.变量地址──系统分配给变量的内存单 元的起始地址

指针及其应用 变量的地址 基本概念 内存中每个字节有一 个编号-地址 自标要求 内存 变量的内容 程序中: int x=10 讲课提纲 2000 2002 10 float k 2004 讲课内容 2006 编译或函数调用时为其分配内存单元 200A 课后作业 变量是对程序中数据 存储空间的抽象
目标要求 课后作业 讲课提纲 讲课内容 程序中: int x=10; float k; 内存中每个字节有一个编号-地址 . . 2000 2002 2004 200A 内存 0 2006 10 编译或函数调用时为其分配内存单元 变量是对程序中数据 存储空间的抽象 指针及其应用 基本概念 变量的内容 变量的地址

指针与指针变量 。指针:一个数据或变量在内存中的首地址 。指针变量:专门存放变量地址的变量叫八 自标要求 指针 X=100 4000 整型变量x 讲课提纲 4002 100 变量的内容 4004 变量的地址 4006 讲课内容 4008 变昌 D=&x 指针变量 变量地址(指针 课后作业 指向 地址存入 变量 指针变量 变量值
目标要求 课后作业 讲课提纲 讲课内容 . . 4000 4008 400C 400A 整型变量x 100 变量p 4002 4004 4006 ◼ 指针与指针变量 ◼ 指针:一个数据或变量在内存中的首地址 ◼ 指针变量:专门存放变量地址的变量叫~ 4000 指针 指针变量 变量的内容 变量的地址 X=100 p=&x 指针变量 变量 变量地址(指针) 变量值 指向 地址存入 指针变量

指针及其应用 ● 指针的定义和引用 指针变量的定义 自标要求 指针变量的用 指针定义与引用的有关说明 讲课提纲 指针变量作为函数形参 讲课内容 课后作业
目标要求 课后作业 讲课提纲 讲课内容 指针及其应用 指针变量的定义 指针变量的引用 指针定义与引用的有关说明 指针变量作为函数形参 指针的定义和引用

指针及其应用 指针变量的定义 指针变量的定义 自标要求 一般形式:基本类型标识符 指针变量名列表; 讲课提纲 C语言的基本类型名 义指针变量 合法标识符 例 char “p不是*” 运算符 int *p2,*p3; 讲课内容 注意: 1. 指针变量名是pl,p2,p3不是*pl,*p2,*p3 课后作业 2. 指针变量的类型是根据指针变量所指向单元中存放的 值的类型来确定的 3. 指针变量只能指向定义时所规定类型的变量 4. 一个指针变量在内存中也要占用内存单元
目标要求 课后作业 讲课提纲 讲课内容 指针及其应用 指针变量的定义 ◼ 指针变量的定义 一般形式: 基本类型标识符 *指针变量名列表; 表示定义指针变量 合法标识符 不是‘*’运算符 C语言的基本类型名 例 char *p1; int *p2,*p3 ; 注意: 1. 指针变量名是p1,p2 ,p3不是*p1,*p2,*p3 2. 指针变量的类型是根据指针变量所指向单元中存放的 值的类型来确定的 3. 指针变量只能指向定义时所规定类型的变量 4. 一个指针变量在内存中也要占用内存单元

●● &与冰运外 ●● 含义:取变量 貪义:取指钍厅指向变量的内容 单目运算例章途算符瓯为逆运并 自材 优先级:?理 趣先级:2 结合性:自看 王人L 讲课提纲 2000 整型变量 2002 10 i ipointer &i=&(*i pointer) 2004 i is *i pointer *(&i) 讲课内容 2006 2008 变量i pointer 200A 2000 指针变量 课后作业 200C 1 pointer 指针变量,它的内容是地址量 *i pointer- 指针的目标变量,它的内容是数据 &i pointer-指针变量占用内存的地址
目标要求 课后作业 讲课提纲 讲课内容 含义: 取变量的地址 单目运算符 优先级: 2 结合性:自右向左 含义: 取指针所指向变量的内容 单目运算符 优先级: 2 结合性:自右向左 ◼ 两者关系:互为逆运算 ◼ 理解 . . 2000 2008 200C 200A 整型变量i 10 变量i_pointer 2002 2004 2006 2000 指针变量 i_pointer-指针变量,它的内容是地址量 *i_pointer-指针的目标变量,它的内容是数据 &i_pointer-指针变量占用内存的地址 i_pointer &i &(*i_pointer) i *i_pointer *(&i) i_pointer = &i = &(*i_pointer) i = *i_pointer = *(&i) &与*运算符