【发布时间】:2014-11-12 15:40:36
【问题描述】:
我是 C 编程新手,并试图了解指针运算的工作原理。下面的 printf 语句在 printf 的参数为 *(p+2) 时打印 2,而对于 *p 的参数为 4。你能解释一下这种行为吗?
#include <stdio.h>
#include <conio.h>
int main()
{
int arr[4] = {4,3,2,1}, *p = arr;
printf("\n%d", *(p+2));
return 0;
}
【问题讨论】:
-
浏览一些教程。
标签: c pointers pointer-arithmetic