指针重要吗?
指针是C和C++中的一个重要概念。每一个学习和使用C和C++的人,都应该深入地学习和掌握指针。但是!指针概念复杂,初学者时常会出错,学好并不容易。接下来,小编会带各位萌新们从入门到进阶,深入了解指针。
什么是指针?
想要了解指针,先来了解一个概念-------地址。
C++编译系统一般为整形变量、单精度浮点型分配4个字节,为字符型变量分配1个字节。内存区的每一个字节都有一个编号,这就是“地址”。简单来说,一个变量的指针就是该变量的地址。这时候又有另一个概念------指针变量。指针变量是用来存放变量地址的变量。
变量与指针
下面用一段简单的代码解释一下:
int i=3;
int *p=&i; //p=&i
"*"符号表示指向,是一个指针运算符,在变量名前加"*",表示该变量是指针变量;
“&”符号是取地址运算符(也叫取址运算符),在变量前加"&",表示取该变量的地址。
上段代码定义了一个整型变量i,将3赋值给变量i。int *p表示定义一个指针变量p,而p指向的变量的数据类型为整型。&i表示取变量i的地址,将该地址赋值给p。"*"也表示解引用,因此*p表示解除变量i的地址,即*p=3。
接下来写段代码帮助你更能理解吧!
通过指针变量访问整型变量:
#include <iostream>
using namespace std;
int main()
{
int a, b;
a = 10;
b = 20;
int *p1, *p2;
p1 = &a;
p2 = &b;
cout << "p1=" << p1 << endl
<< "p2=" << p2 << endl
<< "*p1=" << *p1 << endl
<< "&a=" << &a << endl
<< "*p2=" << *p2 << endl
<< "&b=" << &b << endl;
return 0;
}
运行效果:
这里,想必各位大聪明(bushi ) 都大概明白了指针的概念和初步运用了吧!(滑稽