📅  最后修改于: 2023-12-03 14:54:48.402000             🧑  作者: Mango
以下是一个C语言程序。它有什么输出?
#include<stdio.h>
int main()
{
int a[2][2] = { {1, 2}, {3, 4} };
int *p = &a[1][1];
printf("%d", *++p);
return 0;
}
输出结果为 4
。
该程序定义了一个二维数组 a
,其元素为{1, 2, 3, 4}
。同时,定义了一个指向 a[1][1]
元素的指针 p
。当 *++p
运行时, p
的值被递增,指向 a[1][2]
(即第二行第三列)上的元素,其值为 4
,然后输出到控制台上。
这是一个简单的指针运算问题,在C语言中非常常见。需要通过细心的分析和思考,理解指针的本质,才能更好地处理这些问题。