指针加减一个整数
指针变量的大小都是四个字节,指针加1,是加了一个指针所指向类型的大小,不是加指针变量的大小。
#include
int main()
{
int m = 0;
int *p;
p=&m;
printf("%p%p",p,p+1);//p+1的意思是p+sizeof(*p)*1
return 0; }
指针-指针
1,指针不适合做加法运算,一般用于减法运算
2,指针做减法运算时,一定要指向同一个数组,相减结果是两个指针之间的元素的数目,而不是两个指针之间相差的字节数
3,如果两个指针不是指向同一个数组,他们相减则没有意义
#include
int main() {
int a[4] = {12,34,56,78 }; int * p,*q; p = &a[1]; q = &a[3]; printf("%dn",q-p); return 0;
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)