Page 52 - 高中 信息技术 选择性必修1 数据与数据结构
P. 52

第二章 数据的存储方式                                                                                                                                                                                                   2.3 数据的链式存储与组织






                        2.3.1 指针与指针变量





                           采用链式结构存储数据的特点是:每个数据元素除了要存储数据本身的信息外,还需
                      要存储一个指示其后继数据元素的信息(即后继数据元素的存储位置)。在C++语言中,
                      通常使用指针(Pointer)来实现这种存储位置的指示。

                           所谓指针,就是指某个内存单元的地址。在C++语言中,指针也是一种数据类型。与
                      普通数据类型不同的是,定义指针变量(Pointer Variable)没有专门的关键字,而是利用
                      “*”(星号)来进行定义。C++语言中定义指针变量的一般形式为:
                           类型说明符 *变量名;
                                             广东教育出版社
                           例如,以下代码分别定义了一个整型指针变量pi、浮点型指针变量pf、字符串指针变
                      量ps和结构类型指针变量pware:
                           //指针变量的定义形式:类型说明符 *变量名;

                           int *pi; //定义一个整型指针
                           float *pf; //定义一个浮点型指针
                           string *ps; //定义一个字符串指针

                           struct wareInfo *pware; //定义一个结构类型指针
                           为弄清指针的本质含义,首先要理解变量是什么。定义一个变量,其实就代表分配计
                      算机内存中的一个存储单元用于存储数据,变量名通常就代表所存储的数据。但是,如果

                      我们在变量名前面使用“&”运算符(取地址运算符),则表示获取变量对应存储空间的
                      地址。例如:
                           int a=42;
                           int *pi=&a;

                           上面的两行代码表示:定义一个变量a用于存储整数42,定义一个整型指针变量pi,其
                      初始值指向变量a,也就是说,变量pi保存的是变量a的内存地址,如图2-9所示。


























                                                           图2-9 指针变量的本质



              44  44







          21X2204.indd   44                                                                                        2019/9/26   13:53:08
   47   48   49   50   51   52   53   54   55   56   57