一、指针的算术运算
1、指针运算
- 指针运算是以指针所存放的地址作为运算量而进行的
- 指针运算的实质就是地址的计算
2、指针的算数运算
指针加上整数,指针减去整数, 指针递增,指针递减和两个指针相减。
指针加减一个n的运算: px + n px - n
移动步长是指针的目标
3、注意:
- 不同数据类型的两个指针实行加减整数运算是无意义的
- px+n表示的实际位置的地址量是:(px) + sizeof(px的类型) * n
- px-n表示的实际位置的地址量是: (px) - sizeof(px的类型) * n
4、两指针相减运算
- px-py 运算的结果是两指针指向的地址位置之间相隔数据的个数
- 两指针相减的结果值不是地址量,而是一个整数值,表示两指针之间相隔数据的个数。
二、指针的算术运算—自增自减
1、运算符的优先进
2、后置运算符
三、指针的算术运算应用
大小端模式-电脑存储模式 :
1)C语言中除了8bit的char之外,还有16bit的short型,32bit的int型,对于位数大于 8位的处理器,必然存在如何将多个字节排序的问题。
2)大小端指的是在存储器中,存放数据的字节顺序
- 小端模式,是指数据的低字节保存在内存的低地址中
- 大端模式,是指数据的低字节保存在内存的高地址中
四、指针的关系运算
- 两指针之间的关系运算表示它们指向的地址位置之间的关系。指向地址大的指针大于指向地址小的指针。
- 但可以和零进行等于或不等于的关系运算,判断指针是否为空。