3

我有一个项目,项目中的两个文件被命名为query-structures.h query-structures.c. 中的内容query-structures.h

#include <stdint.h>
typedef struct user_identifier user_identifier;
extern user_identifier;

并且在query-structures.c

#include "query-structures.h"
struct user_identifier
{
    uint64_t user_id;
};

现在编译器给我一个警告

warning: useless type name in empty declaration [enabled by default]

我不明白为什么会出现此警告,因为我必须struct在项目的其他文件中使用它。

4

1 回答 1

10

此行异常,因为您声明了类型但没有变量名

extern user_identifier;

例如,对于整数,你会写

extern int x;

不是

  extern int;
于 2012-06-19T00:19:24.203 回答