亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

沒有運行結果也對??!

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

怎么沒有運行結果??

正在回答

2 回答

因為文件hello.c的printLine()函數和test.c中的say()函數是被相互引用的,因此這兩個函數都應為外部函數,在兩個文件中都必須聲明引用。所以小編的答案是錯誤的!具體代碼如下:

補充:extern的主要作用不在于定義外部變量或函數,而在于引用定義,如果在其他編譯器中去掉#include”test.c",不然會出現重定義(例如visual studio)。

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


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

有運行結果啊,你是不是在本地寫的?如果在本地寫的話,那么你需要有test.c這個源文件

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

舉報

0/150
提交
取消
C語言入門
  • 參與學習       926904    人
  • 解答問題       21532    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

沒有運行結果也對??!

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號