概念:
指针是一种特殊的数据类型,使用它可以定义指针变量。
指针变量存储的是整型数据,代表了内存的编号,通过这个编号可以访问对应的内存。
指针的应用场景:
1、用在函数中满足不同函数间共享变量的需要
首先函数间传参是单向值传递。
有共享变量需要时,使用全局变量可能会命名冲突;使用数组比较麻烦,需要额外传递长度。
所以使用指针不失为一种好的选择,因为虽然函数之间命名空间是独立的,但是地址空间是同一个,指针可以解决共享变量的问题。
2、作为函数的参数,提升传参效率
由于函数之间传参是值传递(内存拷贝),对于字节数较多的变量,值传递的效率较低,如果传递变量的地址只需要传递4或8个字节。
3、申请堆内存,需要通过指针访问
堆内存无法像栈内存一样取名字,它不像data、bss、stack段能让变量名与内存建立联系,我们只能使用指针记录堆内存的地址来访问对应的内存。
定义指针:
定义一个指针变量:int* p=NULL;