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

请问哪里错了?

hello.c:

#include <stdio.h>

void printLine()     

{

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

}

extern void say();

int main()

{

    say();

    return 0;

}

test.c:

#include <stdio.h>

void say()

{

    printLine();

    printf("I love imooc\n");

    printf("good good study!\n");

    printf("day day up!\n");

    printLine();

}


正在回答

2 回答

把引用test.c文件的语句#include "test.c"删了,再加一条声明函数的语句void Say();

原因如下:1.加声明语句:函数的使用有声明,定义和调用三个步骤,调用外部函数时由于已经定义过所以可以省略此步骤,但是还是要进行声明才能调用的。

2.删除#include语句:此语句相当于将引用文件复制粘贴过来,此处相当于还没有声明就直接调用printLine()函数,不符合规则。

正确代码如下:

hello.c

#include <stdio.h>   

extern void printLine()

{

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

}

void Say();//声明函数

int main()

{

    Say();//调用函数

    return 0;

}


test.c

#include <stdio.h>

void printLine();//声明函数

extern void Say()

{

    printLine();//调用函数

    printf("I love imooc\n");

    printf("good good study!\n");

    printf("day day up!\n");

    printLine();//调用函数

}





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

#include <stdio.h>

extern void printLine()    

{

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

}

int main()

{

    say();

    return 0;

}

你要像这样

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

奥德彪拉香蕉

#include <stdio.h> #include "test.c" //引用test.c文件 extern void printLine() //这里定义的方法对吗? { printf("**************\n"); } int main() { say(); return 0; } 我都这样了,运行失败
2024-08-23 回复 有任何疑惑可以回复我~
#2

奥德彪拉香蕉

#include <stdio.h> #include "test.c" //引用test.c文件 extern void printLine() //这里定义的方法对吗? { printf("**************\n"); } int main() { say(); return 0; }
2024-08-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926210    人
  • 解答问题       20797    个

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

进入课程

请问哪里错了?

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