膏齊哈尔大学 QIQIHAR UNIVER 指针 @ 多 History Q主讲:耿蕊
指 针 主讲:耿蕊
指针 C程序设计中使用指针可以: ·使程序简洁、紧凑、高效 ·有效地表示复杂的数据结构 ·动态分配内存 ·得到多于一个的函数返回值
指针 C程序设计中使用指针可以: • 使程序简洁、紧凑、高效 • 有效地表示复杂的数据结构 • 动态分配内存 • 得到多于一个的函数返回值
\7.1指针的概念 History >变量与地址 内存中每个字节有一个编号-地址 内存 0 程序中:inti 2000 2001 i float k, 2002 编译或函数调用时为其分配内存单元 2003 2005
7.1 指针的概念 ➢变量与地址 程序中: int i; float k; 内存中每个字节有一个编号-地址 . . 2000 2001 2002 2005 内存 0 2003 i k 编译或函数调用时为其分配内存单元
7.1指针的概念 ART History >指针与指针变量 指针:一个变量的地址 ◆指针变量:专门存放变量地址的变量叫做指针变金指针 2000 整型变量1 2001 10 变量的地址 变量的内容 2002 2003 2004 4一变量 pointer 2005→ 指针变量 指针变量 变量地址(指针) 2006 指向 地址存入 变量 指针变量 变量值
7.1 指针的概念 ➢指针与指针变量 ❖指针:一个变量的地址 ❖指针变量:专门存放变量地址的变量叫做指针变量 . . 2000 2004 2006 2005 整型变量i 10 变量i_pointer 2001 2002 2003 2000 指针 指针变量 变量的地址 变量的内容 指针变量 变量 变量地址(指针) 变量值 指向 地址存入 指针变量
7.1指针的概念 History 8与*运算符 ipointer *i pointer 含义:颗黄叔:取指谢郸向变量的内空 &i pointer 2000 10 单昏解单目运算符 i 优先级:2 优先级:2 结合性:自 结合性9A 整型变量i 200I 10 Lpointer &i=&(*i_pointer) 2002 *i pointer *(& 2003 2004 ←一变量i pointer 2005+ .2000- 指针变量 2006 i_pointer-一指针变量,它的内容是地址量 i_pointer-一-一指针的目标变量,它的内客是数据 &i_pointer-一指针变量占用内存的地址
7.1 指针的概念 ➢ &与*运算符 ❖ 含义 含义: 取变量的地址 单目运算符 优先级: 2 结合性:自右向左 含义: 取指针所指向变量的内容 单目运算符 优先级: 2 结合性:自右向左 ❖ 两者关系:互为逆运算 ❖ 理解 . . 2000 2004 2006 2005 整型变量i 10 变量i_pointer 2001 2002 2003 2000 指针变量 i_pointer-指针变量,它的内容是地址量 *i_pointer-指针的目标变量,它的内容是数据 &i_pointer-指针变量占用内存的地址 2000 10 i_pointer *i_pointer &i_pointer i i_pointer &i &(*i_pointer) i *i_pointer *(&i) i_pointer = &i = &(*i_pointer) i = *i_pointer = *(&i)