第 10 章 指针
C 程序设计中使用指针可以 :
使程序简洁、紧凑、高效
有效地表示复杂的数据结构
动态分配内存
得到多于一个的函数返回值
主要内容
指针地址(变量的地址、数组地址、函数地址)
指针变量:存放地址的变量
变量的指针和指向变量的指针变量
数组的指针和指向数组的指针变量
字符串的指针和指向字符串的指针变量
函数的指针和指向函数的指针变量
指针数组和指向指针的指针
2000
2001
2002
2005
0
2003
§
10.1 地址和指针的概念
变量与地址
程序中 : int i=10;
float k=2.0;
内存中每个字节有一个编号 ----- 地址
…...
…...
内存
10
2.0
编译或函数调用时为其分配内存单元
变量是对程序中数据
存储空间的抽象
2004
…...
…...
2000
2004
2006
2005
整型变量 i
10
变量 i_pointer
2001
2002
2003
2000
指针
指针变量
变量的内容
变量的地址
指针变量
变量
变量地址 ( 指针 )
变量值
指向
地址存入
指针变量
直接访问与间接访问
直接访问:按变量名对内存单元进行存取
间接访问:通过存放变量地址的指针变量去访问内存单元
例 i=3; ----- 直接访问
指针变量
…...
…...
2000
2004
2006
2005
整型变量 i
10
变量 i_pointer
2001
2002
2003
2000
3
例 i_pointer=&i;
*i_pointer=20; ----- 间接访问
20