指针运算
指针运算
什么是指针
在信息工程中指针是一个用来指示一个内存地址的计算机语言的变量或中央处理器(CPU)中寄存器(Register)。
指针运算
指针变量加/减一个整数
例如:p++,p--,p+i等。
C语言与C++语言规定,一个指针变量加/减一个整数是将改指针变量的原值(是一个地址)和它指向的变量所占用的内存单元字节数相加或相减。这样就保证了p+i指向p下面的第i个元素。
如p+i代表这样的地址计算:p+i*d,其中d为p所指向的变量单元所占用的字节数。
指针变量赋值
C语言与C++语言规定,可以将一个变量或一个函数的入口地址赋值给相应的指针变量。
例如(假设p是相应的指针):
p=&a;
p=max;(max为已经定义的函数)
指针变量相减
如果两个指针变量指向同一个数组的元素,则两个指针变量之差是两个指针之间的元素个数。
注意,指针变量相加无实际意义。
指针变量比较
如果两个指针变量指向同一个数组的元素,则可以进行比较。指向前面元素的指针变量小于指向后面元素的指针变量。