指针变量
指针变量是C/C++等编程语言中的一个重要概念,它存储的是另一个变量的内存地址,而不是值。通过指针,我们可以直接访问和操作存储在那个地址的数据。
一、 基本概念
假设我们有一个整型变量int a = 10;,这个变量在内存中有一个特定的地址。如果我们想要获取这个地址并对其进行操作,我们就需要使用指针变量。
我们可以定义一个指向整型的指针变量int *p;,然后将a的地址赋给这个指针变量:p = &a;。现在,p就指向了a,也就是说,p中存储的是a的内存地址。
二、指针变量的定义和赋值
在上述代码中,我们首先定义了一个整数变量 num 并赋值为 10。然后,我们定义了一个整数类型的指针变量 ptr 。最后,我们使用取地址运算符 & 将 num 的地址赋值给 ptr 。
三、通过指针变量访问变量的值
在上述代码中,我们使用间接访问运算符 * 来通过指针变量 ptr 访问所指向的变量 num 的值。
四、指针变量的运算
在上述代码中,我们首先定义了三个整数变量 num1 、 num2 和 num3 ,并将指针变量 ptr 初始化为指向变量 num1 。然后,我们使用指针变量 ptr 进行加 1 运算,将其指向了变量 num2 。最后,我们再次将 ptr 指向变量 num3 ,并通过间接访问运算符 * 来访问和打印变量 num3 的值。
五、把指针变量作为函数参数
C 语言中,函数参数可以是指针变量。通过将指针变量作为函数参数,我们可以在函数内部修改指针所指向的变量的值,从而实现对原始变量的修改。
下面是一个示例代码,演示了如何将指针变量作为函数参数:
在上述示例中,我们定义了一个名为 modifyValue 的函数,它接受一个整数指针作为参数。在函数内部,我们使用间接访问运算符 * 来修改指针所指向的变量的值。
在 main 函数中,我们首先创建了一个整数变量 num 并初始化为 10。然后,我们打印了变量 num 的值。接下来,我们调用 modifyValue 函数,并将 &num 作为参数传递给函数。在函数内部,指针 ptr 指向变量 num ,我们将其值修改为 20。最后,我们再次打印变量 num 的值,发现它已经被修改为 20。
通过将指针变量作为函数参数,我们可以在函数内部修改原始变量的值,这是指针变量的一个重要特性。