#include
int main()
{
int arr[] = {1, 2, 3, 4, 5};
int *p = arr;
++*p;
p += 2;
printf("%d", *p);
return 0;
}
(A) 2
(B) 3
(C) 4
(D)编译器错误答案: (B)
说明:表达式++ * p被评估为“ ++(* p)”。因此,它增加了数组第一个元素的值(不更改指针p)。
当p + = 2完成时,p更改为指向数组的第三个元素。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。