指针是一个用数值表示的地址,因此,用户可以对指针执行算数运算,可以对指针进行四种算术运算,++,--,+,-
假设ptr是一个指向地址1000的整型指针,是一个32位的整数,让我们对该指针执行下列的算数运算
ptr++
在执行完上述的运算后,ptr将指向位置1004,因为ptr每增加以此,它都将指向下一个整数位置,即当前位置往后移4个字节,这个运算会在不影响内存位置中实际值的情况下,移动指针到下一个内存的位置,如果ptr指向一个地址为1000的字符,上面的运算会导致指针指向位置1001,因为下一个字符位置是在1001
递增一个指针
我们喜欢在程序中使用指针代替数组,因为变量指针可以递增,而数组不能递增,因为数组是一个常量指针
递减一个指针
同样的,对指针进行递减运算,即把值减去其数据类型的字节数
指针的比较
指针可以用关系运算符进行比较,如==,<,和>,如果p1和p2指向两个相关的变量,比如同一个数组中的不同元素,则可对p1和p2进行大小比较