假设现在我们有这么一个数组:
int a[5] = { 1,2,3,4,5 };
第一种方式:直接通过下标遍历。
for (int i = 0; i < 5; i++) { printf("%d ", a[i]); }
第二种方式:数组名就是首元素的地址,因此通过数组名,使用*获取其中的值的方式来遍历。
for (int i = 0; i < 5; i++) { printf("%d ", *(a+i)); }
第三种方式:使用指针来遍历。
int* p = a; for (int i = 0; i < 5; i++) { printf("%d ", *(p+i)); }
指针指向的是数组a的首元素的地址,然后通过(*指针)来解引用获取其中的值,最后通过(*指针+1)获取下一个元素的值。