前言
不知道大家是不是和我一样,在刚学c语言的时候被指针折磨,完全学不懂的感觉,希望本文可以帮助你理解指针(基础篇)。
一.指针是什么
指针其实是一个存放地址的变量,地址是指变量在内存中存放的起始地址。
这里用&a取出a的地址,然后将a的地址赋给指针变量p,但这里并不是将a的4个字节放在p里,而是只将第一个字节放在p里。
二.指针的大小
指针的大小随编译器的不同也有所不同,在32位系统中指针占4个字节,在64位系统中指针占8个字节。
三.指针类型
指针有各种各样的类型,他的类型取决于它指向的变量的类型,
int* a;//指向的变量为int
char* b;//指向的变量为char
short *c;
double *d;
float *e;
...
四.指针±整数
这里p+1跳过了四个字节,是因为指针p的类型是int*,int在内存中占四个字节,而p1