2.3.8 指针类型

2013-10-07 15:16:14 · 作者: · 浏览: 76

2.3.8   指针类型

指针是一种特别的数据类型,用来存储数据在内存中的地址。计算机内存被划分为按顺序编号的内存单元,任何变量在内存中都有单独的内存单元,即它在内存中的地址。举例来说,先声明一个变量,然后用指针指向变量,如下所示。

  1. 01   int num;  
  2. 02   int* pnum;  
  3. 03   pnum = # 

上段代码中第2行的“*”是取值运算符,它告诉编译器声明的变量是一个指针变量。它以指针为操作数,其运算结果是指针指向的变量。第3行的“&”是取址运算符,功能是取出变量的地址。“*”和“&”互为逆运算。

【例2.9】 指针保存变量的地址,程序代码如下。(实例位置:光盘\mr\example\第2章\2.9)

代码位置:光盘\mr\example\第2章\2.9\p\p.cpp

  1. 01   #include "iostream.h"  
  2. 02   int main()  
  3. 03   {  
  4. 04      int num;  
  5. 05      int* pnum;  
  6. 06      pnum = #  
  7. 07      cout <<"输入一个数"<<"\n";  
  8. 08      cin >>num;  
  9. 09      cout<<"指针pnum的值:"<<"\n";  
  10. 10      cout<<pnum<<"\n";  
  11. 11      cout<<"地址"<<pnum<<"中的值是:"<<"\n";  
  12. 12      cout<<*pnum<<"\n";  
  13. 13   } 

运行结果如图2.9所示。
 

试一试:根据以上程序,定义一字符型变量ch,并为其赋初值,然后定义一个指针,指向该变量ch的地址,输出指针所指向的内存和内存中存放的数据。