C语言——指针变量

简介: C语言——指针变量

指针变量

指针变量是C/C++等编程语言中的一个重要概念,它存储的是另一个变量的内存地址,而不是值。通过指针,我们可以直接访问和操作存储在那个地址的数据。

一、 基本概念

假设我们有一个整型变量int a = 10;,这个变量在内存中有一个特定的地址。如果我们想要获取这个地址并对其进行操作,我们就需要使用指针变量。

我们可以定义一个指向整型的指针变量int *p;,然后将a的地址赋给这个指针变量:p = &a;。现在,p就指向了a,也就是说,p中存储的是a的内存地址。

二、指针变量的定义和赋值

image.png

在上述代码中,我们首先定义了一个整数变量  num  并赋值为 10。然后,我们定义了一个整数类型的指针变量  ptr 。最后,我们使用取地址运算符  &  将  num  的地址赋值给  ptr 。

 

三、通过指针变量访问变量的值

 

  image.png

 

在上述代码中,我们使用间接访问运算符  *  来通过指针变量  ptr  访问所指向的变量  num  的值。

 

四、指针变量的运算

  image.png

在上述代码中,我们首先定义了三个整数变量  num1 、 num2  和  num3 ,并将指针变量  ptr  初始化为指向变量  num1 。然后,我们使用指针变量  ptr  进行加 1 运算,将其指向了变量  num2 。最后,我们再次将  ptr  指向变量  num3 ,并通过间接访问运算符  *  来访问和打印变量  num3  的值。

五、把指针变量作为函数参数

C 语言中,函数参数可以是指针变量。通过将指针变量作为函数参数,我们可以在函数内部修改指针所指向的变量的值,从而实现对原始变量的修改。

 

下面是一个示例代码,演示了如何将指针变量作为函数参数:

  image.png

在上述示例中,我们定义了一个名为 modifyValue 的函数,它接受一个整数指针作为参数。在函数内部,我们使用间接访问运算符 * 来修改指针所指向的变量的值。

main 函数中,我们首先创建了一个整数变量 num 并初始化为 10。然后,我们打印了变量 num 的值。接下来,我们调用 modifyValue 函数,并将 &num 作为参数传递给函数。在函数内部,指针 ptr 指向变量 num ,我们将其值修改为 20。最后,我们再次打印变量 num 的值,发现它已经被修改为 20。

通过将指针变量作为函数参数,我们可以在函数内部修改原始变量的值,这是指针变量的一个重要特性。

 

目录
相关文章
|
7天前
|
存储 C语言
C语言数据类型、变量和运算符以及printf相关问题
C语言数据类型、变量和运算符以及printf相关问题
|
6天前
|
存储 编译器 C语言
【C语言】【指针1】指针难?看这个就够了!
【C语言】【指针1】指针难?看这个就够了!
|
6天前
|
C语言
C语言------指针
这篇文章是关于C语言中指针的实训,通过示例代码展示了指针的基本概念、定义、赋值、使用和传递,以及指针运算和指针在函数参数中的应用,如交换两个变量的值和找出两个数中的较小值。
C语言------指针
|
20小时前
|
存储 编译器 C语言
【C语言篇】深入理解指针2
代码 const char* pstr = "hello world."; 特别容易让初学者以为是把字符串 hello world.放 到字符指针 pstr ⾥了,但是本质是把字符串 hello world. 首字符的地址放到了pstr中。
|
20小时前
|
存储 程序员 编译器
【C语言篇】深入理解指针1
assert.h 头⽂件定义了宏 assert() ,⽤于在运⾏时确保程序符合指定条件,如果不符合,就报错终⽌运⾏。这个宏常常被称为“断⾔”。
|
4天前
|
存储 搜索推荐 C语言
C语言中的指针函数:深入探索与应用
C语言中的指针函数:深入探索与应用
|
6天前
|
存储 编译器 C语言
【C语言】指针练习题目
【C语言】指针练习题目
|
11天前
|
C语言 Python
C语言指针(2)
C语言指针(2)
18 5
|
11天前
|
存储 C语言
C语言指针(1)
C语言指针(1)
13 5
|
11天前
|
C语言
C语言数据类型和变量
C语言数据类型和变量
19 5