1.引言:
作为一名大一新生,我想谈谈短短的一个学期的时间内我对于C++指针的理解,下面所写的东西可能在某些方面还不够严谨,也仅仅是个人的拙见,如有不足之处也希望各位大佬指正,本人将不胜感激。
2.指针的基本概念:
指针,顾名思义,是指向某个地方的指引,如同高速上的指示牌指向某个固定的地址,对应到计算机中,我们可以理解为指针就是地址(指针代表着地址),我们可以通过指针来访问内存中的某个地方(这里的地址是以十六进制的形式呈现的),通过下面这段代码我们可以简单来理解一下:
#include<iostream>
using namespace std;
int main() {
int* p;
int a = 5;
p = &a;//&是取址运算符
cout << "p地址所储存的值为: " << *p << endl;//*是解运算符(获取对应地址下所储存的东西)
cout << "该值对应的地址为: " << p << endl;//p是指针即地址
return 0;
}
3.常量指针与指针常量 :
通过刚才概念的引入我们了解到,我们可以通过指针来访问内存,也可以通过指针变量来保存地址,既然有变量就必然有常量与其相对应,可是指针指向的值是常量(常量指针),还是该值所对应的地址是固定(即指针常量),我们对此应有所区分。
常量指针