这是我的代码,我在声明int*intpointer的行中得到了上面的错误。请帮我解决这个问题。

#include <stdio.h>

int main()
{
int intarray[5] = {10,20,30,40,50};

int i;
for(i = 0; i < 5; i++)
    printf("intarray[%d] has value: %d - and address @ %x\n", i,     intarray[i], &intarray[i]);

int *intpointer = &intarray[4];
printf("address: %x - has value %d\n", intpointer, *intpointer);

intpointer--;
printf("address: %x - has value %d\n", intpointer, *intpointer);

return 0;
}

最佳答案

发表声明

int *intpointer = &intarray[4];

在声明intarray之后的函数代码块的开头。
当错误消息报告时,您将代码编译为C90代码,该代码要求声明在其他语句之前。

08-16 20:44