C语言第八章地址与指针

C语言第八章地址与指针
C语言第八章地址与指针

1文档来源为:从网络收集整理.word 版本可编辑. 第八章 地址和指针

第一节 变量的地址和指针

1、计算机的内存是以字节为单位的一片连续的存储空间,每一个字节都有一个编号,这个编号就成为内存地址。

2、程序中定义了一个变量,c 编译系统就会根据定义中变量的类型,为其分配一定字节数的内存空间:

Short int 2

Int float 4

Double 8

char 1

指针 4

图8.1 变量在内存中所占字节的地址示意图 每个变量的地址就是指该变量所占存储单元的第一个字节的地址。

3、直接存取:程序中我们对变量进行存取操作,实际上也就是对某个地址的存储单元进行操作。这种直接按变量的地址存取变量值的方式。

4、在c 语言中,还可以定义一种特殊的变量,这种变量只

a 2001 p

3001

a b x

1012 1013 1015 1016 1201 1202 1203 1204

a

1文档来源为:从网络收集整理.word 版本可编辑. 是用来存放内存地址的。

图8.2 存放地址的指针变量示意图

通过变量p 间接得到变量a 的地址,然后再存取变量a 的值的方式称为“间接存取”方式,通常变量p 指向了变量a ,变量a 是变量p 所指向的对象。

5、用来存放指针地址的变量就称作“指针变量”。

6、“变量p 指向变量a ”的含义就是指针变量p 中存放了变量a 的地址。

7、在某些场合,指针是使运算得以进行的唯一途径。

第二节 指针的定义赋值

一、 指针变量的定义和指针变量的基本类型

1、 定义指针变量的一般形式如下:

类型名 *指针变量名1,*指针变量名2……

说明:1)类型名是基本类型。

2)*是说明符。(而在调用的时候,代表的是存储单元中的值)

3)指针变量名是用户标识符。

例:1)int *pi,*pj; pi pj 只能存放整型变量的地址 int I,*pi;double *pj;

2)p 为一个指向指针的指针变量

2002 2002 1012 1013

p p

相关主题
相关文档
最新文档