读书人

C++合法C不合法的数据结构定义?该怎

发布时间: 2012-03-09 16:54:57 作者: rapoo

C++合法,C不合法的数据结构定义?
struct z
{
struct z (*p)[256];
};
这样的结构在C语言编译器(gcc vs2005-c-mode)编译都不可通过,请问是不是标准C不支持这样的结构定义?

[xcr@s68 ~]$ gcc -c tt.c
tt.c:5: error: array type has incomplete element type

但在g++ vs2005-c++-mode下都是合法定义


[解决办法]
*p干吗要加括号?
[解决办法]
加括号表示指向数组的指针,至于为什么在C下不行,我也不知道。既然楼主试过很多编译器,估计就是C不支持了。
[解决办法]
我在dev-c++下编译通过,但在TC下就没有...
不明白!
[解决办法]
帮顶
[解决办法]
数组指针C++中有,C中以前没有不知道C99有没有
你用gcc的c99模式试试看
[解决办法]
汗一个,gcc直接编译过去了
[root@localhost ~]$ cc t.c
[root@localhost ~]$ cat t.c
struct z
{
struct z (*p)[256];
};

int main()
{
}

[解决办法]
mark
[解决办法]
很正常,c语言也有c90和c99 标准之分

[解决办法]
bcb 6 中就不行

读书人网 >C语言

热点推荐