1.指针+-整数
int main()
{
int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int sz = sizeof(arr) / sizeof(arr[0]);
int i = 0;
//int* p = arr;
//for (i = 0; i < sz;i++)
//{
// printf("%d ", *p);//1 2 3 4 5 6 7 8 9 10
// p++;
//}
//for (i = 0; i < 5; i++)
//{
// printf("%d ", *p);//1 3 5 7 9
// p += 2;
//}
int* p = &arr[9];
for (i = 0; i < 5; i++)
{
printf("%d ", *p);//10 8 6 4 2
p -= 2;
}
return 0;
}
2.指针-指针
指针减指针 得到的是指针之间的元素个数
要得到元素个数 得大地址-小地址
同时两个指针必须指向同一块空间
int main()
{
int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
printf("%d\n", &arr[9] - &arr[0]);//9
return 0;
}