问答详情
源自:5-13 内部函数与外部函数

无法验证通过

#include <stdio.h>
#include "test.c"   //引用test.c文件
extern void printLine()     //这里定义的方法对吗?
{
   printf("**************\n");   
}
int main()
{
    say();
    return 0;
}

写的和提示一模一样了,还是提醒我检查代码,究竟怎么才能通过啊!

课程进度一直99%真是太受不了了!

提问者:朝夕77 2016-01-01 19:05

个回答

  • qq__3559
    2016-01-22 20:38:03

    补充:extern的主要作用不在于定义外部变量或函数,而在于引用定义,如果在其他编译器中去掉#include”test.c",不然会出现重定义(例如visual studio)。

  • qq__3559
    2016-01-22 01:23:20

    #include <stdio.h>
    extern void printLine();
    void say(){
        printLine();
        printf("I love imooc\n");
        printf("good good study!\n");
        printf("day day up!\n");
        printLine();
    }

  • qq__3559
    2016-01-22 01:23:03

    #include <stdio.h>
    #include "test.c"   //引用test.c文件
    extern void say();
    void printLine()     //这里定义的方法对吗?
    {
       printf("**************\n");  
    }
    int main()
    {
        say();
        return 0;
    }

  • qq__3559
    2016-01-22 01:22:23

    因为文件hello.c的printLine()函数和test.c中的say()函数是被相互引用的,因此这两个函数都为应为外部函数,在两个文件中都必须声明引用。所以小编的答案是错误的!具体代码如下:

  • 迷途的马尔斯
    2016-01-01 19:18:52

    应该是老师当时没有设置好答案的验证