1、内存:
(1)内存怎么编号
32位:2^32个地址
64位:2^64个地址
(2)一个内存单元有多大空间:8bit=1字节
2、指针:可以理解为地址
指针变量:用来存放地址
int main()
{
int a = 10;//int在内存中需要4个字节
printf("%p\n", &a);//%p用来打印地址//&a只取第一个字节的地址
int* pa = &a;//pa用来存放地址,是指针变量
//*说明pa是指针类型//int说明pa执行的对象是int类型
*pa = 20;//*:解引用操作//*pa:通过pa里的地址,找到a
printf("%d\n", a);//20,可以借助pa改变a的值
char ch = 'w';
char* pc = &ch;
return 0;
}
int main()
{
printf("%d\n", sizeof(char*));//4
printf("%d\n", sizeof(short*));//4
printf("%d\n", sizeof(int*));//4
printf("%d\n", sizeof(long*));//4
printf("%d\n", sizeof(long long*));//4
printf("%d\n", sizeof(float*));//4
printf("%d\n", sizeof(double*));//4
//指针需要多大空间,取决于地址的存储空间需要多大空间
//32位:32bit - 4字节
//64位:64bit - 8字节
return 0;
}
希望本文对大家有帮助,上文若有不妥之处,欢迎指正
分享决定高度,学习拉开差距