在计算机中,内存是连续的存储空间,并且对内存进行了编址,编址是连续的,地址的基本单位是字节。
变量,在编译时(先编译理解这个很重要)根据它的类型给它分配一定长度的内存单元。
比如:
int型变量占4个字节
double型变量占8个字节
引用一个变量时就是从该变量名对应的地址开始的若干单元取出数据
变量赋值时是将数据按照该变量定义的类型存入对应的内存单元。所以该变量对应的内存地址中存入的内容即是该变量的值。
c语言中规定,通过地址运算符&得到变量的地址。
说明:
1. 基本类型的变量,变量长度都是一定的,即变量长度是由类型决定的,而不是赋的值长度
#include<stdio.h> int main(void){ int a = 1; int b = 10223372036854775807; printf("%d\n",sizeof(int)); printf("%d\n",sizeof(a)); printf("%d\n",sizeof(b)); return 0; }
2. 编辑器首先会对定义的变量安装类型在内存单元中数值一定长度的空间,无论是否赋值。
转载请注明:谷谷点程序 » c语言变量的地址(通过变量在内存中的地址了解其本质)