如果两个指针指向同一个数组,它们就可以相减,其结果为两个指针之间的元素数目。

int array[2]={0,1};

int *p =&array[0];

 

int *q =&array[1];

q-p=1//等于1 而不是等于4

p++是值加上了4个值;

(int)p-(int)q=4//看好了 是int 不是int*

上面这种减法一般这么写((int)p-(int)q)/sizeof(type)

 

相关文章: