日期:2014-05-16  浏览次数:20704 次

问一个gcc编译的菜问题
写了个小程序a.c:
#define N 10
int array1[2*N+1][2*N+1][2*N+1]
int main()
{
  .
  array1[N][N][N]....
  .
}
然后编译gcc -o a a.c,出错提示:
error:template declaration of 'int array1[21][21][21]'
error:'array1' was not declared in this scope
晕。。怎么这样呢,到底怎么回事阿

------解决方案--------------------
语句以分号结束。。。
你这跟gcc没有半毛钱的关系。
------解决方案--------------------
探讨

语句以分号结束。。。
你这跟gcc没有半毛钱的关系。

------解决方案--------------------
哥们看了你的程序我很惊恐!!!
弱弱的问一下:
是C语言的另外一种风格我没有学过呢?
还是你自创的语言啊????
------解决方案--------------------

int array1[2*N+1][2*N+1][2*N+1];
 
------解决方案--------------------
#define N 10
int array1[2*N+1][2*N+1][2*N+1];
int main()
{
.
array1[N][N][N];
.
}

即使这样也编译不过
------解决方案--------------------
楼主想做什么啊?
------解决方案--------------------
我按你的随便写了一个 编译后执行 正常输出200
C/C++ code

#include <stdio.h>
#define N 10
int array1[2*N+1][2*N+1][2*N+1];
int main(void)
{
    array1[N][N][N]=200;
    printf("%d\n",array1[N][N][N]);
    return 0;
}

------解决方案--------------------
那你怎么
int main()
{
.
array1[N][N][N]....
.
}
这个 . 是使用内嵌汇编吗?
------解决方案--------------------
你PO出来的程序本身没有错误的。
------解决方案--------------------
你把完整程序贴一下。