这是我的程序,它调用“ parse_flags”函数:
#include "parse-json/process_flags.h"
static int parse_json(const char *filename)
{
// other code
parse_flags(data, &parsed_flags);
}
在“ process_flags.h”中声明“ parse_flags”功能
static void parse_flagblock(struct json_object *obj, flags_t *parsed_flags,
const char *jsonkey, enum json_type type,
const struct parser_flagsconv *flagsconv);
static int parse_flags(struct json_object *obj, flags_t *parsed_flags);
这些功能在“ process_flags.c”文件中实现,该文件包括相应的.h文件。
#include "process_flags.h"
static void parse_flagblock(struct json_object *obj, flags_t *parsed_flags,
const char *jsonkey, enum json_type type,
const struct parser_flagsconv *flagsconv);
static int parse_flags(struct json_object *obj, flags_t *parsed_flags);
static void parse_flagblock(struct json_object *obj, flags_t *parsed_flags,
const char *jsonkey, enum json_type type,
const struct parser_flagsconv *flagsconv)
{
/// code
}
static int parse_flags(struct json_object *obj, flags_t *parsed_flags)
{
/// code
}
当我使用make命令编译它时,我看到以下错误:
process_flags.c:10:13:错误:“ parse_flagblock”的类型冲突
静态无效parse_flagblock(struct json_object * obj,flags_t * parsed_flags,process_flags.c:13:12:错误:“ parse_flags”的类型冲突
静态int parse_flags(struct json_object * obj,flags_t * parsed_flags);
我“认为”我所有的声明都正确。似乎找不到我在这里缺少的东西。任何帮助表示赞赏。 TIA !!!