return在没有强制转换的情况下从整数中生成指针 - 但是类型可以吗?

时间:2013-07-13 09:14:09

标签: c gcc casting inline extern

只是一些代码。在一个文件及其标题中:

// header:
extern char * thessc_config_member_get_config_key(struct config_member_t *m);

// implementation:
inline char * thessc_config_member_get_config_key(struct config_member_t *m) {
    return m->config_key;
}

// another file (.c)
char *key;
key             = thessc_config_member_get_config_key(*ary);

[edit]:包含所有必需的标题![/ edit]

但是gcc with -fsyntax-only告诉:

 Warnung: Zuweisung erzeugt Zeiger von Ganzzahl ohne Typkonvertierung [standardmäßig aktiviert]
     key             = thessc_config_member_get_config_key(*ary);

 # English: return makes pointer from integer without a cast

有人可以向我解释为什么会这样吗?我尝试删除externinline,但它也无效!

问候。

1 个答案:

答案 0 :(得分:0)

*ary对我来说不对劲。您可能将&ary表示为函数的参数。