全文预览

清华谭浩强C语言课件 第10章 指针-课件【PPT演示稿】

上传者:菩提 |  格式:ppt  |  页数:144 |  大小:0KB

文档介绍
m 作为索引值,检索符号表, 找到变量 num 的起始地址 2000 ;然后将键盘输入的值(假设为3)送到内存单元 2000 和 2001 中。此时,变量 num 在内存中的地址和值?2) printf("num =%d\n",num) 的执行过程, 与 scanf ()很相似: ?首先找到变量 num 的起始地址 2000 ,然后从 2000 和 2001 中取出其值,最后将它输出。(2) 间接访问──通过另一变量访问该变量的值 C语言规定:在程序中可以定义一种特殊的变量(称为指针变量),用来存放其它变量的地址。例如,假设定义了这样一个指针变量 num_pointer , 它被分配到 4000 、 4001 单元,其值可通过赋值语句“ num_pointer =& num ;”得到。此时,指针变量 num_pointer 的值就是变量 num 在内存中的起始地址 2000. 通过指针变量 num_pointer 存取变量 num 值的过程如下: 首先找到指针变量 num_pointer 的地址( 4000 ),取出其值 2000 (正好是变量 num 的起始地址); 然后从 2000 、 2001 中取出变量 num 的值( 3)。在C语言中,指针是一种特殊的变量,它是存放地址的。(3)两种访问方式的比较两种访问方式之间的关系,可以用某人甲(系统)要找某人乙(变量)来类比。一种情况是,甲知道乙在何处,直接去找就是(即直接访问)。另一种情况是,甲不知道乙在哪,但丙(指针变量)知道,此时甲可以这么做:先找丙, 从丙处获得乙的去向,然后再找乙(即间接访问)。指针和指针变量的定义: ?一个变量的地址称为该变量的“指针”。?例如,地址 2000 是变量i的指针。如果有一个变量专门用来存放另一变量的地址(即指针),则它称为“指针变量”。上述的 i_pointer 就是一个指针变量。

收藏

分享

举报
下载此文档