使用struct定义数组类型的数据结构时出现expected primary-expression before '[' token错误

crazyboy2005 2007-11-12 11:43:31
#define MaxSize 1000
typedef struct
{
int i;
int j;
}s[MaxSiZe];
int count=-1;
在调用的时候用
count++;
s[count].i=1;
s[count].j=1;

编译的时候出错:
expected primary-expression before '[' token

请各位高手解答,谢谢
...全文
1921 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wdb_xj 2007-11-13
  • 打赏
  • 举报
回复
6楼解释不错哈·学习
guzhilei1986 2007-11-13
  • 打赏
  • 举报
回复
#include <iostream>
#define MaxSize 1000
using namespace std;
struct //这样是可以的但是如果加上typedef就不行了。
//typedef这个修饰符是指你定义了一个变量名,而没有声明变量
{
int i;
int j;
}s[MaxSize];
int main()
{

int count=-1;
count++;
s[count].i=1;
s[count].j=1;
system("pause");
return 0;
}
zjw6861982 2007-11-12
  • 打赏
  • 举报
回复
2楼正解,楼主关注!
Treazy 2007-11-12
  • 打赏
  • 举报
回复
s定义错误
如楼上所说定义
SS s[MaxSiZe];
_石头_ 2007-11-12
  • 打赏
  • 举报
回复
typedef struct
{
int i;
int j;
}s[MaxSiZe];
这里定义出来的结构体类型就是s[MaxSiZe]----是一个类型.
搂住你要的是这样的:
typedef struct
{
int i;
int j;
}SS;

SS s[MaxSiZe]; //这才是定义了一个结构体数组!



hai040 2007-11-12
  • 打赏
  • 举报
回复
typedef struct
{
int i;
int j;
} st;
st s[MaxSiZe];
pomiox 2007-11-12
  • 打赏
  • 举报
回复
SS s[MaxSiZe]; //这才是定义了一个结构体数组!
===============
在类里就好比是建立一个对象。

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧