指针的本质是变量,可以是各种数据类型,定义一个指针 "*ip",其中 "ip" 需要赋于一个地址(可以用 & 符号获取其他变量的地址再赋值给 ip),而 "*ip" 是一个具体的值,即读取地址后获得的值;例子如下
#include <iostream> using namespace std; int main() { int var = 20; int *ip; ip = &var; cout << "var的值:"; cout << var << endl; cout << "变量 ip 的储存地址:"; cout << ip << endl; cout << "指针 *ip 的值:"; cout << *ip << endl; return 0; }
var的值:20 变量 ip 的储存地址:0x7fff5e7deae8 指针 *ip 的值:20
& 符号的意思是取地址,也就是返回一个对象在内存中的地址。
* 符号的意思是取得一个指针所指向的对象。 也就是如果一个指针保存着一个内存地址,那么它就返回在那个地址的对象。
简单点就是:&:取址。* :取值