1. 指针的赋值:
//方法1:
int a = 10;
int* p;
p = &a;
//方法2:
int* p = &a;
2. 指针的大小:
#include<iostream>
using namespace std;
int main() {
//指针占有的内存空间
int a = 10;
//创建指针变量
int* p;
double* q;
//另一种指针赋值方法
int* p1 = &a;
//不论什么类型的指针,占用的字节都是4个(32位)
cout << "size of p is: " << sizeof(p) << endl;
//即使是double类型的指针,站的字节数也是4
cout << "size of q is: " << sizeof(q) << endl;
cout << "size of p1 is: " << sizeof(p1) << endl;
//放int*关键字也可以
cout << "size of p is: " << sizeof(int*) << endl;
system("pause");
return 0;
}
在一般所用的32位编译器中,指针变量的长度都为4,在64位中,均为8字节。注意,sizeof函数中可以放之前所定义的指针变量名称(注意不是*p而是p,2019的VS将*和数据类型放在一起避免了混淆),也可以放指针类型(int*,double*等等),最终打印输出的数值都为4.