两指针相减
如果两个指针指向同一个数组,它们就可以相减,其结果为两个指针之间的元素数目。
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)
眼过千遍不如手过一遍! 书看千行不如手敲一行! 手敲千行不如单步一行! 单步源代码千行不如单步对应汇编一行!