3

プロジェクトがあり、プロジェクト内の 2 つのファイルの名前は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;

たとえば、int の場合、次のように記述します。

extern int x;

いいえ

  extern int;
于 2012-06-19T00:19:24.203 に答える