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

为什么这么写还是报错,求大佬看看

#include <stdio.h>

#include "test.c"   //引用test.c文件

extern void printLine()     //这里定义的方法对吗?

{

   printf("**************\n");   

}

int main()

{

    say();

    return 0;

}


正在回答

2 回答

hello.c从test.c调用函数,所以是extern       test.c要设置一个静态函数,所以加static

1 回复 有任何疑惑可以回复我~
#1

qq_浪人独道_0 提问者

​#include <stdio.h>static void say(){ printLine(); printf("I love imooc\n"); printf("good good study!\n"); printf("day day up!\n"); printLine();} 这是test.c里面的代码,加了能打印出来结果,但是还是有报错
2018-10-21 回复 有任何疑惑可以回复我~
#2

CassanBob

test.c的函数不加static为什么错呢?
2018-10-25 回复 有任何疑惑可以回复我~
#3

天才legend 回复 qq_浪人独道_0 提问者

hello.c里面那个改成extern
2018-10-26 回复 有任何疑惑可以回复我~
#4

天才legend 回复 CassanBob

static定义的是内部函数,只能在其所处的源文件中使用;如果是外部函数的话,extern可以省略
2018-10-26 回复 有任何疑惑可以回复我~
#5

慕后端6482527 回复 天才legend

那我test.c都是静态函数了 为什么还可以到hello.c里面使用
2018-10-27 回复 有任何疑惑可以回复我~
#6

CassanBob 回复 天才legend

test.c里难道不加static就会影响使用吗?对于test.c来说是内部函数还是外部函数应该没什么影响吧?
2018-10-27 回复 有任何疑惑可以回复我~
查看3条回复

注意观察一下编写时左上角有个test.c,不是hello.c

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么这么写还是报错,求大佬看看

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信