JUST DO IT ~

我只想当个程序员

编译结构体问题 expected specifier-qualifier-list before XXX gcc g++

expected specifier-qualifier-list before XXX   gcc g++

这个问题主要是结构体变量定义引起:
1.未定义/未找到定义直接使用.
2.定义了,但是定义方式有问题.

gcc和g++在这个问题表现不同.

-----------------------------
简陋方式
struct  AA{
}; 
struct BB{
AA    a1;
}
gcc -o test  a.c 

a.c: 在函数‘main’中:
a.c:18: 错误:‘AA’未声明(在此函数内第一次使用)
a.c:18: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
a.c:18: 错误:所在的函数内也只报告一次。)
---------------------------------------------------------------
关键词没用对 
修改成:
typedef struct  AA{
}; 
: 警告:空声明中指定存储类无用
a.c: 在函数‘main’中:
a.c:18: 错误:‘AA’未声明(在此函数内第一次使用)
a.c:18: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
a.c:18: 错误:所在的函数内也只报告一次。)

------------------------------
实用关键词
typedef struct  
{

}AA ; 

编译通过.
-----------------------------------------
typedef struct AA  
{
AA * ptr;
}AA ;
彻底解决问题.  ----- 最佳方式吧.

---------------------------------------------
g++ 毫无问题. 最简单方式就ok.
struct  AA{
}; 

http://stackoverflow.com/questions/608175/what-does-this-error-mean-error-expected-specifier-qualifier-list-before-typ

http://stackoverflow.com/questions/3888569/expected-specifier-qualifier-list-before

posted on 2015-08-24 13:57 小高 阅读(4543) 评论(0)  编辑  收藏 所属分类: C


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2015年8月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

常用链接

留言簿(3)

随笔分类(352)

收藏夹(19)

关注的blog

手册

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜