急!C语言问题,大家帮忙.
来源:百度知道 编辑:UC知道 时间:2024/05/18 02:12:11
首先定义一个结构
struct scorebore_fu
{
int opcode;
int dreg;
int qr;
.
.
.
}sb_fu;
然后定义数组如下:
sb_fu *Fu_sta[8];
引用时出错的句子为:
Fu_sta[i] -> opcode = 0;
等等.
错误提示:parse error before numeric constant.
请问如何解决?很长时间没有动过C了,不知道咋办了.
不好意思,我忘了写了.
我的源程序里有"typedef"的!!!!!!!!!
struct scorebore_fu
{
int opcode;
int dreg;
int qr;
.
.
.
}sb_fu;
然后定义数组如下:
sb_fu *Fu_sta[8];
引用时出错的句子为:
Fu_sta[i] -> opcode = 0;
等等.
错误提示:parse error before numeric constant.
请问如何解决?很长时间没有动过C了,不知道咋办了.
不好意思,我忘了写了.
我的源程序里有"typedef"的!!!!!!!!!
typedef struct scorebore_fu
{
int opcode;
int dreg;
int qr;
.
.
.
}sb_fu;
注意 ,前面加一个typedef
汗看错了.......
sb_fu *Fu_sta[8];
根本没有给每个指针分配内存!
下面的是使用方式,但是不建议这样使用.
#include<stdio.h>
#include <malloc.h>
#define N 8
typedef struct scorebore_fu
{
int opcode;
int dreg;
int qr;
} sb_fu;
sb_fu* Fu_sta[N];
int main()
{
int i = 0;
for (i = 0; i < N; i++)
Fu_sta[i] = (sb_fu*)malloc(sizeof(sb_fu));
for (i = 0; i < N; i++)
Fu_sta[i] -> opcode = 0;
for (i = 0; i < N; i++)
free(Fu_sta[i]);
return 0;
}