目录
1指针
1.1内存
内存是电脑上特别重要的储存器,计算机中所有程序的运行都是在内存中进行的。所以为了有效的使用内存,就把内存划分成一个个小的内存区域,每个内存区域的大小为一个字节。为了能够有效的访问到内存单元,就给内存单元进行了编号,这些编号即为该内存单元的地址
1.2内存的单位
我们常见的内存单位是 MB GB 但其实还有Bit Byte Kb TB PB其中Bit 是最小的。其中单位转换Bit转换成Byte是除以8,一个字节是8个比特位,kb转换mb的是除以1024,mb是1024个kb,依次类推
2.1实例介绍
int main() {
int a = 10;//a在内存重要分配空间 - 4个字节
printf("%p\n", &a);//%p专门打印地址的 &取地址操作符
int * pa = &a;//pa是用来存放地址的,在c语言中pa是叫做指针变量
//* 说明pa是指针变量
//int 说明pa执行的对象为int 类型
char ch = 'w';
char* pc = &ch;
return 0;
}
2.2通过地址找到变量
int main() {
int a = 10;
int* pa = &a;
* pa = 20;//*了解引用操作符,*pa解释通过pa里的地址找到a
printf("%d\n", a);
return 0;
}
通过上面的实例就就可以知道指针就是地址
3.指针大小
int main() {
printf("%d\n",sizeof(char*));
printf("%d\n", sizeof(short*));
printf("%d\n", sizeof(int*));
printf("%d\n", sizeof(long));
printf("%d\n", sizeof(long long*));
printf("%d\n", sizeof(short*));
return 0;
}
//编译结果为
//4
//4
//4
//4
//4
//4
其结果是4,为什么呢?因为指针就是地址,指针的大小取决于储存空间