下列语句执行后,数组的内容是什么?我很困惑。数组内容不会保持不变吗?
#include <stdio.h>
#define N 10
int main() {
int a[N] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int *p = &a[0], *q = &a[N - 1], temp;
while (p > q)
{
temp = *p;
*p++ = *q;
*q-- = temp;
}
printf("%d", a[N]);
return 0;
}
没有任何反应,因为p小于q。 –
如果您执行此代码并打印数组的最终内容,结果如何? –
为什么不运行这段代码然后打印数组内容? –