为了账号安全,请及时绑定邮箱和手机立即绑定

警告:函数的隐式声明

警告:函数的隐式声明

C
SMILET 2019-06-29 10:02:46
警告:函数的隐式声明我的编译器(GCC)警告我:警告:函数的隐式声明请帮我理解它为什么会来。
查看完整描述

3 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

您使用的是编译器没有看到声明的函数(“原型“)还没有。

例如:

int main(){
    fun(2, "21"); /* The compiler has not seen the declaration. */       
    return 0;}int fun(int x, char *p){
    /* ... */}

您需要在main之前声明您的函数,比如直接声明函数,或者在头文件中声明函数:

int fun(int x, char *p);


查看完整回答
反对 回复 2019-06-29
?
四季花海

TA贡献1811条经验 获得超5个赞

正确的方法是在标头中声明函数原型。

主.h

#ifndef MAIN_H#define MAIN_Hint some_main(const char *name);#endif

主.c

#include "main.h"int main(){
    some_main("Hello, World\n");}int some_main(const char *name){
    printf("%s", name);}

选择一个文件(main.c)

static int some_main(const char *name);int some_main(const char *name){
    // do something}


查看完整回答
反对 回复 2019-06-29
  • 3 回答
  • 0 关注
  • 1104 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信