gcc和vc在定义结构时的一点区别
gcc和vc在定义结构时的一点区别
typedef struct _test {
_test *p;
} test;
这个结构用vc可以编译通过,而gcc却不能。
vc强调结构的标记(_test)与别名(test)不能同名,只要不同名的情况下,struct _test *p可以简写为_test *p,即使加上关键字struct,也必须不同名才行。
然而gcc却允许标记和别名完全一样,但_test *p不能省略掉struct关键字(正确的定义应该是struct _test *p),即使不同名也不能省略。
评论暂时关闭