2.3.8 指针类型
指针是一种特别的数据类型,用来存储数据在内存中的地址。计算机内存被划分为按顺序编号的内存单元,任何变量在内存中都有单独的内存单元,即它在内存中的地址。举例来说,先声明一个变量,然后用指针指向变量,如下所示。
- 01 int num;
- 02 int* pnum;
- 03 pnum = #
上段代码中第2行的“*”是取值运算符,它告诉编译器声明的变量是一个指针变量。它以指针为操作数,其运算结果是指针指向的变量。第3行的“&”是取址运算符,功能是取出变量的地址。“*”和“&”互为逆运算。
【例2.9】 指针保存变量的地址,程序代码如下。(实例位置:光盘\mr\example\第2章\2.9)
代码位置:光盘\mr\example\第2章\2.9\p\p.cpp
- 01 #include "iostream.h"
- 02 int main()
- 03 {
- 04 int num;
- 05 int* pnum;
- 06 pnum = #
- 07 cout <<"输入一个数"<<"\n";
- 08 cin >>num;
- 09 cout<<"指针pnum的值:"<<"\n";
- 10 cout<<pnum<<"\n";
- 11 cout<<"地址"<<pnum<<"中的值是:"<<"\n";
- 12 cout<<*pnum<<"\n";
- 13 }
运行结果如图2.9所示。
试一试:根据以上程序,定义一字符型变量ch,并为其赋初值,然后定义一个指针,指向该变量ch的地址,输出指针所指向的内存和内存中存放的数据。