C++ 指针变量

一、简介

      指针=(内存)地址

      指针变量=存放内存地址的变量

二、定义指针变量

1.格式:

        类型名 *指针变量名;

                解:“*”:定义指针变量的说明符

2.定义指针后

系统会为指针分配一个内存单元,内存空间的大小由根据指针所指的数据类型决定。

3.指针指向的数据类型与指针的移动和运算相关

如:“使指针移动1个位置”或“使指针值+1”

若指向整型:地址移动2个字节或+2个字节

若指向实型:地址移动4个字节或+4个字节

C++ 指针变量_第1张图片

三、指针的运算

1.C++有2个专门用于指针的运算符

        &                取地址运算符

        *                 取值运算符

2.用法

&        常放在变量前面

          作用:取该变量的地址

*        常放在指针变量前面

         作用:取该指针所指内存单元中的内容

int a=8;//声明整型变量a,初值为8
int *p=&a;//声明指向整型变量的指针p,其值为a的地址
int b=*p;//声明整型变量b,并将指针变量p所指存储单元的内容赋值给b

int *pl;//声明指向整型变量的指针p1
pl=p;//将指针变量p的地址赋给pl,p1也指向a的存储单元
        //它等价于pl=&a

3.注意

1、定义指针变量之后,必须要对其初始化,否则无意义

2、指针变量的类型必须与其存放的变量类型保持一致

3、指针变量之间赋值,必须使其类型相同

4、指针变量只能赋一个指针的值,若赋的是一个变量的值或常量的值,而不是变量的地址,系统会以这个值作为地址,根据这个“地址”读写的结果将是致命的

4.应用

#include 
using namespace std;
int main()
{
	int a,*pi;
	pi=&a;	//pi指向a
	*pi=8;	//pi所指存储单元数据为8
cout<<"a的地值为:"<<&a<C++ 指针变量_第2张图片

 

你可能感兴趣的:(C++,c++)