C++语言程序设计

在C++中，一种比较重要、也较难掌握的一种数据类型，就是指针类型。所谓指针就是在内存中的地址，它可能是变量的地址，也可能是函数的入口地址。如果指针变量存储的地址是变量的地址，我们称该指针为变量的指针（或变量指针）；如果指针变量存储的地址是函数的入口地址，我们称该指针为函数的指针（或函数指针）。
注意：指针变量与变量指针的含义不同：指针变量也简称为指针，是指它是一个变量，且该变量是指针类型的；而变量指针是指它是一个变量，该变量是指针类型的，且它存放另一个变量的地址。
我们知道：局部变量等的内存空间是编译器在栈中自动分配的，它的作用域和生存期局限于所定义的程序块中。我们也可以在堆中用new运算符自己申请内存，该内存的生存期由程序员自己控制。指针的一个重要用途就是：可以匿名访问通过new运算符在堆中分配的内存。
一般说来，变量有两种方法访问：直接通过变量名访问或通过指针间接访问。以前我们介绍的程序中，对变量的访问大多是通过变量名访问的，变量也可以通过指针间接访问，即通过变量的指针而找到变量的值，这是我们下面要学习的内容。此外，我们还要学习函数的指针。
引用为变量提供了一个别名，变量通过引用访问与通过变量名访问是完全等价的。引用提供了与指针相同的能力，但比指针更为直观，更易于理解。