C语言中,指针有哪些不同的操作以及指针相关的问题是什么?

指针是一个变量,其值是另一个变量的地址,即内存位置的直接地址。与任何变量或常量一样,在使用指针存储任何变量地址之前,必须声明指针。

请考虑以下陈述 -

int qty = 179;

变量在内存中的表示如下

您可以按如下方式声明指针 −

Int *p;

这意味着“p”是一个指针变量,它保存另一个整数变量的地址。

地址运算符 (&) 用于初始化指针变量。

例如

int qty = 175;
int *p;
p= &qty;

要访问变量的值,请使用间接运算符 (*)。

例如

“*”可以被视为地址值。

这两个语句等价于以下语句 -

 p = &qty;
 n = *p; n =qty

不同的指针操作

C语言中的指针操作解释如下 -

  • 赋值 − 我们可以通过使用&(地址运算符)将地址分配给指针。

  • 值查找 − 它只不过是取消引用,其中 * 运算符将存储在指向位置中的值给出。

  • 获取指针地址 - 就像其他变量一样,指针变量有一个地址和一个值,在地址运算符的帮助下,我们可以找到指针本身是否被存储。

  • 向指针添加整数 − 我们可以使用 + 运算符将整数添加到指针或指向整数的指针。在这里,在这两种情况下,int 都与指向类型的字节数相乘,并将结果添加到原始地址中。

  • 递增指针 - 它是一个数组元素,用于移动到数组的下一个元素。

  • 从指针中减去一个整数 − 我们使用 –(减号)运算符从指针中减去一个整数。将整数乘以指向类型的字节数,然后从原始地址中减去结果。

  • 递减指针 − 递减指针,指向上一个位置而不是之前,我们可以同时使用前缀和后缀形式作为递减运算符。

  • 减法 - 我们可以找到两个指针的差异。通常,我们过去常常找出元素的距离。

  • 比较 − 我们将使用关系运算符来比较两个指针的值。

下面给出的是演示 C 语言中指针操作功能的程序 -

#include<stdio.h>
main ( ){
   int x,y;
   //Declaring a pointer
   int *p;
   clrscr ( );
   x= 10;
   //Assigning value to a pointer
   p = &x;
   y= *p;
   printf ("Value of x = %d", x);
   printf ("x is stored at address %u", &x);
   printf ("Value of x using pointer = %d", *p);
   printf ("address of x using pointer = %u", p);
   printf (“value of x in y = %d", y);
   *p = 25;
   printf ("now x = %d", x)
   getch ( );
}

输出

当您执行上述程序时,您将获得以下输出

Value of x = 10
x is stored at address = 5000
Address of x using pointer = 10
Address of x using pointer = 5000
Value of x in y = 10
Now x = 25
  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新华

感谢打赏,我会继续努力原创。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值