面试题答案
一键面试- 数组名自动转换为指针的情况:
- 在绝大多数表达式中,数组名会自动转换为指向数组首元素的指针。例如,当数组名作为函数参数传递时,或者在使用数组名进行算术运算(如与指针运算类似的操作)时,数组名会转换为指针。
- 转换规则:
- 数组名转换后的指针类型是指向数组元素类型的指针。例如,对于
int arr[10]
,数组名arr
转换后的指针类型为int *
,它指向数组arr
的第一个元素arr[0]
。
- 数组名转换后的指针类型是指向数组元素类型的指针。例如,对于
- 代码示例:
#include <stdio.h>
int main() {
int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr; // 数组名arr自动转换为指向首元素的指针,并赋值给ptr
printf("数组第三个元素的值为:%d\n", *(ptr + 2)); // 通过指针访问数组第三个元素
return 0;
}