内存是以字节为单位的连续的存储空间,每个内存单元都有一个编号,称为内存地址。
指针就是在内存中存放的是别的地方的地址,通过访问指针我们可以直接获得存储单元里那个地址所存储的内容。
定义
形式:数据类型 *指针变量名
要注意的是指针的宽度,比如int就是4个字节,float就是8个字节。指针只是存储了一个地方的地址。
为了减少野指针的出现,在定义时可以赋值为NULL,NULL就是0的意思。
指针数组
即数组中每个元素都是一个指针。
数组指针
即有一个指针指向一个数组。
内存的动态分配
1 malloc函数
调用形式:malloc (int size)
函数向系统申请分配size个字节的内存空间。
2 calloc函数:calloc(unsignde n, unsigned size)
函数申请n个大小为size个字节的连续空间。
3 free函数:用来释放malloc函数申请的动态内存。
指针函数
函数的返回值是一个指针
函数指针
一个指针指向一个函数