C语言指针的算术运算

当C语言中的指针执行数组元素时,C语言允许对指针进行算术运算。

指针运算

C语言支持3种格式的指针算术运算,包括指针加上整数,指针减去整数和两个指针相减。同时还可以用关系运算符进行指针比较。

  • 指针p加上整数j表示指针向后移动j个单位(每个单位大小为指针p的类型所占的字节数),指向p原先指向的元素后的第j个元素。若p指向数组a[i],则p+j指向a[i+j]
  • 指针p减去整数j表示指针向前移动j个单位,指向p原先指向的元素前的第j个元素。若p指向数组a[i],则p-j指向a[i-j]
  • 两个指针相减,得到的是指针之间元素的个数。若指针p指向a[i],指针q指向a[j],则p-q等于i-j
  • 指针的比较依赖于指针所指向的两个元素的相对位置。若指针p指向a[i],指针q指向a[j],pq的比较结果由ij的大小决定。

因此适用于指针运算的运算符包括算术运算符+-,赋值运算符和复合赋值运算符(=+=,’-=’,++--)和所有的关系运算符。

/**************************************
 * pointer_5.c                        *
 *                                    *
 * C语言中的指针运算                  *
 **************************************/

#include <stdio.h>
#define N 10

int main()
{
  int a[N], sum, *p;
  int i = 0;
  printf("请输入%d个整数:", N);
  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值