指针的赋值和使用

更多来自:http://imcc.blogbus.com

 

3.9.3 指针的赋值和使用

在得到一个指针变量之后,指针变量的值还是一个随机值。这个值可能是内存中无关紧要的数据,也可能是重要的数据或者程序代码,如果直接使用是很危险的,所以在使用指针之前,必须对其进行赋值,将其指向某个有意义的数据或代码。对指针变量进行赋值的语法格式如下:

指针变量 = 内存地址;

可以看到,对指针变量的赋值,实际上就是将这个指针指向某一内存地址,而这个内存地址上存放的就是这个指针想要指向的数据。通常我们用一个变量来保存数据,那么该如何方便地得到一个变量在内存中的地址呢?反过来,如果知道一个指针,又如何取出存放在其中的数据呢?为了解决这两个问题,C++提供了两个与内存地址相关的运算符——“&”和“*”。

1. “&”运算符

“&”称为取地址运算符,如果把它放在一个变量的前面,则可以得到该变量在内存中存放的地址。例如:

// 定义一个整型变量

int N = 703;

// 取得整型变量的地址并将其赋值给整型指针

int*pN = &N;

通过“&”运算符可以取得N这个整型变量的内存地址,然后将其赋值给指针pN,也就是将指针pN指向N这个整数数据,如图3-7所示。

clip_image002

图3-7 指针和指针所指向的数据

posted @ 2011-07-17 11:09  陈良乔  阅读(5972)  评论(0编辑  收藏  举报