§91指针的概念 数据在内存中的存放 内存:为一个连续编号(连续地址)且以一个 单元为一个字节的连续存贮区 2000 若程序中定义了三个nt变量i,jk 2001 2002 inti=-5,j=5,k=10 2003 20410}k设:系统分配的起始地址为200单元 则:j的起始地址有可能为为2002的单元 30012000 k的起始地址有可能为2004的单元 c語醒设计
§9.1 指针的概念 一、数据在内存中的存放 设:系统分配i的起始地址为2000的单元 内存:为一个连续编号(连续地址)且以一个 单元为一个字节的连续存贮区。 若程序中定义了三个int变量i, j, k int i= – 5, j=5, k=10; 则: j的起始地址有可能为为2002的单元 k的起始地址有可能为2004的单元 2000 2001 2002 2003 2004 2005 3001 – 5 +5 10 2000 i j k
当程序中要用它们的值时: y=ltJ+k 则系统通过一张变量名与地址对应关系表: 分别找到地址2000, 将2000,2001中的数据_5读出; 找到j的地址2002, 将2002,20003中的数据5读出; 找到k的地址2004, 将2004,2005中的数据10读出。 c語醒设计
当程序中要用它们的值时: y=i+j+k; 找到j的地址2002, 将2002,20003中的数据5读出; 找到k的地址2004, 将2004,2005中的数据10读出。 分别 找到i的地址2000, 将2000,2001中的数据–5读出; 则系统通过一张变量名与地址对应关系表:
然后把这些数据进行算术运算 上述过程称为变量的“直接访问” 直接访问:直接使用存放该数据的变量名。 使用变量 相当于使用-5 间接访问:如果将某一变量的地址(如的地址2000 存放到另一个变量x,则可通过x来存 取道值 c語醒设计
直接访问:直接使用存放该数据的变量名。 间接访问:如果将某一变量的地址(如i的地址2000) 存放到另一个变量x,则可通过x来存 取i的值。 上述过程称为变量的“ 直接访问” 然后把这些数据进行算术运算。 使用变量 i 相当于使用 −5
如:用pi,pipk来存放i,jk的地址 3001 2000pl 2000 3003 2002 2002p 55 3005 2004pk 2004 10-k 3007 若要得到变量的值,可以先访问pi,得到i的 地址,再通过该地址找到它i的值 c語醒设计
如:用pi, pj, pk来存放i, j, k的地址 2000 2002 2004 − 5 5 10 3001 3003 3005 3007 2000 2002 2004 pi pj pk i j k 若要得到变量i的值,可以先访问pi,得到i的 地址,再通过该地址找到它i的值
显然,pi与i是通过的地址联系起来的。 定义:一个变量的地址称为该变量的指针 因此,i指针的值为2000。 而存放地址(指针)的变量叫做指针变量 如:pi就是指针变量。 c語醒设计
显然,pi与i是通过i的地址联系起来的。 定义:一个变量的地址称为该变量的指针。 因此,i的指针的值为2000。 如:pi就是指针变量。 而存放地址(指针)的变量叫做指针变量