C语言 - 引用指针

C语言 - 引用指针 首页 / C语言入门教程 / C语言 - 引用指针

我们已经知道"什么是指针" ,指针是存储另一个变量地址的变量。引用运算符也称为间接运算符,由(*)表示。将间接操作符(*)与指针变量一起使用时,称为取消引用指针。当我们取消引用指针时,将返回此指针指向的变量的值。

让我们遵循以下步骤取消对指针的引用。

  • 首先,我们声明指针所指向的整数变量。
int x =9; 
  • 现在,我们声明整数指针变量。
int *ptr; 
  • 在声明了整数指针变量之后,我们将'x'变量的地址存储到指针变量'ptr'。
ptr=&x;
  • 我们可以通过如下所示取消引用指针" ptr"来更改" x"变量的值:
*ptr =8;

上一行将'x'变量的值从9更改为8,因为'ptr'指向'x'位置,并且取消引用'ptr',即* ptr = 8将更新x的值。

无涯教程网

让我们结合以上所有步骤:

#include <stdio.h>
int main()
{
    int x=9;
    int *ptr;
    ptr=&x;
    *ptr=8;
    printf("value of x is : %d", x);
    return 0;}

输出

C dereference pointer

让我们考虑另一个示例。

#include <stdio.h>
int main()
{
    int x=4;
    int y;
    int *ptr;
    ptr=&x; 
    y=*ptr;
    *ptr=5;
    printf("The value of x is : %d",x);
    printf("\n The value of y is : %d",y);
    return 0;
}

在上面的代码中:

  • 我们声明两个变量'x'和'y',其中'x'的值为'4'。
  • 我们声明一个指针变量'ptr'。
  • 在声明了指针变量之后,我们将'x'变量的地址分配给指针'ptr'。
  • 我们知道'ptr'包含'x'变量的地址,因此'* ptr'与'x'相同。
  • 我们借助" ptr"变量(即y = * ptr )而不是使用" x"变量将" x"的值分配给" y"。

输出

C dereference pointer

让我们考虑另一种情况。

#include <stdio.h>
int main()
{
   int a=90;
   int *ptr1,*ptr2;
   ptr1=&a;
   ptr2=&a;
   *ptr1=7;
   *ptr2=6;
    printf("The value of a is : %d",a);
    return 0;
}

在上面的代码中:

  • 首先,我们声明一个'a'变量。
  • 然后,我们声明两个指针,即ptr1和ptr2。
  • 两个指针都包含'a'变量的地址。
  • 我们将* 7的值分配给* ptr1,将'6'的值分配给* ptr2。 " a"的最终值为" 6"。

输出

C dereference pointer

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

数据结构与算法之美 -〔王争〕

Redis核心技术与实战 -〔蒋德钧〕

深度学习推荐系统实战 -〔王喆〕

技术面试官识人手册 -〔熊燚(四火)〕

Redis源码剖析与实战 -〔蒋德钧〕

业务开发算法50讲 -〔黄清昊〕

网络排查案例课 -〔杨胜辉〕

云原生架构与GitOps实战 -〔王炜〕

大型Android系统重构实战 -〔黄俊彬〕

好记忆不如烂笔头。留下您的足迹吧 :)