求解释!!!!!!!

来源:5-13 内部函数与外部函数

lews

2015-12-11 20:24

这个就算把static改为extern还是不能通过,为什么?

写回答 关注

5回答

  • qq__3559
    2016-01-22 20:39:16

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

  • qq__3559
    2016-01-22 01:27:30

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

    hello.c文件中:

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

    test.c文件中:

    #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();
    }


  • onemoo
    2015-12-12 13:24:10

    是的,你应该看看这里的详细解释 http://www.imooc.com/qadetail/105343

    课程通不过可能是本站的问题,最近题目都不能正常判断正误。

  • lews
    2015-12-11 23:59:02

    http://img.mukewang.com/566af2ba00012d4405150578.jpg。。。

  • 忆木偶
    2015-12-11 20:42:01

    http://www.imooc.com/qadetail/105343

    错的地方挺多的,这个题目本身就有问题,具体可以看看上面链接所说的

    lews 回复忆木偶

    这章怎么可以通过?

    2015-12-11 22:10:19

    共 3 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926286 学习 · 20799 问题

查看课程

相似问题