变量、地址、内容、指针

发布时间 2023-07-18 01:05:56作者: 猪油哥

变量、地址、内容、指针

变量:根据变量的类型不同,分配的内存地址大小也不同,例如整型变量需要4个字节,所以编译器为变量i分配的编号为1000~1003,而这里的编号也就是地址

 

定义变量

定义变量:定义一个变量,如:定义一个整型变量int,就是在内存中开辟4个字节的内存空间

 

赋值

对变量赋值,就是在变量开辟的内存中存入内容,内容的地址就是开辟变量时的地址

 

地址

地址就是内存区中对每个字节的编号,如:1000、1001、1002、1003就是地址

 

变量与地址与内容

变量有自己的地址,内容也有自己的地址,变量是内容的引用(映射),操作变量的就能操作内容,改变内容

int x = 1000;
int y = x;
int z;
printf("%d\n", &x);
printf("%d\n", &y);
printf("%d\n", &z);
printf("%d\n", z);
结果:
    -942278876
    -942278844
    -942278812
    -858993460
    x和y都指向了1000,但是x和y的地址又不同,证明变量是有自己的地址的,内容也有自己的地址,变量指向了同一个内容,所以变量的值相等,变量的指向是同一个,但是变量的地址却不同:&x和&y并不相等

 

 

指针

指针,指针分为指针变量和指针,指针变量存的是变量的地址,指针存的是内容

int a = 100, b = 200;
int* p1 = &b;
printf("%d\n", p1);
printf("%d\n", *p1);
结果:
   -942278908
    200