int version;
int width;
unsigned char *data;
} QRcode;
typedef struct _QRcode_List QRcode_List;
struct _QRcode_List {
QRcode *code;
QRcode_List *next;
};
这是纯c语言的qrencode库程序,用于生成二维码的,在vs2013下顺利执行,但是用gcc编译出错,提示“QRcode *code; ”这句存在错误,注释掉这句就顺利执行了,到底是什么问题啊,是不是c语言下不能这样写啊
3 个解决方案
#1
typedef struct {
int version;
int width;
unsigned char *data;
} QRcode;
这儿是不是应该定义下名字呢,直接定义别名,那么别名也应该是谁的名字。
试一下这样是否可行:
typedef struct recode {
int version;
int width;
unsigned char *data;
} QRcode;
#2
代码没问题,错误内容是什么
#3
最终也没搞清楚是哪里的问题,把指针的定义移到结构体外面就没报错了
#1
typedef struct {
int version;
int width;
unsigned char *data;
} QRcode;
这儿是不是应该定义下名字呢,直接定义别名,那么别名也应该是谁的名字。
试一下这样是否可行:
typedef struct recode {
int version;
int width;
unsigned char *data;
} QRcode;
#2
代码没问题,错误内容是什么
#3
最终也没搞清楚是哪里的问题,把指针的定义移到结构体外面就没报错了