标签:元素 指针运算 [] 规则 std key 大小 数组 sig
指针是一种特殊的变量,与整数的运算规则为
p+n; <--> (unsigned int)p + n * sizeof(*p);
结论:
当指针p指向一个同类型的数组的元素时,p+1将指向当前元素的下一个元素;p-1将指向当前元素的上一个元素。
指针之间只支持减法运算,参与减法运算的指针类型必须相同,
注意:
例子1:指针运算的应用
#include <stdio.h>
#define DIM(a) (sizeof(a) / sizeof(*a))
int main()
{
char s[] = {'H', 'e', 'l', 'l', 'o'};
char* pBegin = s;
char* pEnd = s + DIM(s); // Key point
char* p = NULL;
printf("pBegin = %p\n", pBegin);
printf("pEnd = %p\n", pEnd);
printf("Size: %d\n", pEnd - pBegin);
for(p=pBegin; p<pEnd; p++)
{
printf("%c", *p);
}
printf("\n");
return 0;
}
标签:元素 指针运算 [] 规则 std key 大小 数组 sig
原文地址:https://www.cnblogs.com/yanyun888/p/9213166.html