学过C\C++,但掌握不够系统。现在温故而知新,查缺补漏,在此表达下愚见。指针应该包括两部分:指针本身,指针所指向的数据值。
以下代码,输出指针的值和指针所指的num的值
#include<iostream>
using namespace std;
int main(){
int num =110;
int*p =#
cout << p << endl;
cout <<*p << endl;
system("pause");
return0;
}
在VS2015上,调整为x64的输出结果
000000ACBA50FAC4——110
x86的输出结果
0113F838——110
楼上所说指针本质是变量,可能会对初学者造成误解。指针p本身是有值的,值可能是8字节(64位)或者4字节(32位),跟着系统和编译器来判断。
指针p所指向变量num(操作*p)的值为110
* 这里,参考运算符一节,是一种运算方式。不要把 *p 看做指针。
另外,下面这篇文章提供了指针的注意规则和与常量的关系!!!与常量的关系!!!