推荐答案
-- -------------------- ---- ------- -------- --------- --- ------ - --- ----- - ---- --- --- --- ---- --- ---- - ---- -- ------------ --- ------ - ----------- - --------------- --- ---- - - -- - - ------- ---- - --------------- --- ------ -- ----- - ---- - ------ -- -
本题详细解读
1. 指针与数组的关系
在C语言中,数组名实际上是一个指向数组第一个元素的指针。因此,可以通过指针来遍历数组。
2. 指针的初始化
int *ptr = arr;
这里,ptr
被初始化为指向数组arr
的第一个元素。arr
本身就是一个指向数组首元素的指针。
3. 指针的算术运算
*(ptr + i)
通过指针的算术运算,可以访问数组中的不同元素。ptr + i
表示指针ptr
向后移动i
个位置,*(ptr + i)
则解引用该指针,获取该位置的值。
4. 数组长度的计算
int length = sizeof(arr) / sizeof(arr[0]);
通过sizeof
运算符可以计算数组的总字节数,再除以单个元素的字节数,得到数组的长度。
5. 遍历数组
for (int i = 0; i < length; i++) { printf("Element %d: %d\n", i, *(ptr + i)); }
通过for
循环,使用指针遍历数组,并打印每个元素的值。