📅  最后修改于: 2020-10-22 01:44:10             🧑  作者: Mango
正如我们已经知道“什么是指针”一样,指针是存储另一个变量地址的变量。解引用运算符也称为间接运算符,由(*)表示。将间接运算符(*)与指针变量一起使用时,称为解引用指针。当我们解引用指针时,该指针所指向的变量的值将被返回。
由于以下原因,使用了解引用指针:
让我们观察以下步骤解引用指针。
int x =9;
int *ptr;
ptr=&x;
*ptr =8;
上一行将’x’变量的值从9更改为8,因为’ptr’指向’x’的位置并取消引用’ptr’,即* ptr = 8将更新x的值。
让我们结合以上所有步骤:
#include
int main()
{
int x=9;
int *ptr;
ptr=&x;
*ptr=8;
printf("value of x is : %d", x);
return 0;}
输出量
让我们考虑另一个例子。
#include
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’的值也会更改,因为指针’ptr’持有’x’变量的地址。但这不会发生,因为“ y”存储值“ 5″的本地副本。
输出量
让我们考虑另一种情况。
#include
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;
}
在上面的代码中:
注意:如果我们有多个指针指向同一位置,则一个指针所做的更改将与另一指针相同。
输出量