C语言指针详解
一、什么是指针
- 指针是一种数据类型(代表内存地址的整数),使用它定义的变量叫指针变量。
- 指针变量虽然实质上也是普通变量,但是它的用途和普通变量不同。指针变量存储的应该是另一个变量的地址,而不是随意存一些int类型的数。指针变量虽然实质上也是普通变量,但是它的用途和普通变量不同。指针变量存储的应该是另一个变量的地址,而不是随意存一些int类型的数。
二、为什么使用指针
- 函数之间无法通过传参共享变量。
函数的形参变量属于被调用于者,实参属于调用者,函数之间的名字空间相互独立是可以重名的,函数之间的数据传递都是值传递(赋值、内存拷贝)。 - 使用指针可以优化函数之间传参的效率。
- 堆内存无法与标识符建立联系,只能配合指针使用。
三、什么情况下使用指针
- 当你要获取地址的时候,你必须要用指针
- 当在传递参数时多数要使用指针
- 当在动态分配地址时要使用指针
- 在链表时需要使用指针
- 指针可以指向计算机的任何一个位置
- 指针有一个最大的特点,就速度快
四、如何使用指针
使用指针时会频繁进行以下几个操作:定义一个指针变量、把变量地址赋值给指针、访问指针变量中可用地址的值。这些是通过使用一元运算符 * 来返回位于操作数所指定地址的变量的值。
定义:类型* 变量名p;
-
指针变量与普通变量使用方法有很大区别,一般以p结尾,与普通变量区分开。</