作者JASONFUNG (輕鬆學)
看板Programming
標題[問題] 如何將兩個file一起compiler
時間Wed Dec 10 01:40:55 2008
※ [本文轉錄自 C_and_CPP 看板]
作者: JASONFUNG (輕鬆學) 站內: C_and_CPP
標題: [問題] 如何將兩個file一起compiler
時間: Wed Dec 10 00:22:50 2008
請問各位高手~
我希望在compiler的時候,同時compiler兩個檔案
程式如下:
<1>main.c
#include <stdio.h>
void fun1( ) ;
void fun2( ) ;
int x = 15 , y = 15 ;
main( ) {
x++ ;
y++ ;
printf( " %d %d \n ", x , y );
fun2( ) ;
fun1( ) ;
x++ ;
y++ ;
printf( " %d %d ", x , y ) ;
}
<2>fun.c
#include <stdio.h>
extern int x;
void fun1()
{
extern int y;
x++;
y++;
printf("%d\t%d\n", x, y);
}
static int y=0;
void fun2()
{
int x=0;
x++;
y++;
printf("%d\t%d\n", x, y);
}
--------------------------------------------------------------
因為兩個程式的變數都只有 x與y
若在main.c中加入底下這一行程式並compiler
#include"fun.c" <== 當compiler時會有錯誤訊息(重複宣告y的訊息)
因為程式碼就是這樣,請別告訴我換變數名稱!!
小弟不知道如何在這程式碼上正確執行
若各位知道方法,請提供給小弟 EX:如何設定編譯環境、加程式碼...
請各位大大協助小弟能正確compiler並執行...
感激各位~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.127.21.174
→ MOONRAKER:放心好了 12/10 00:39
→ MOONRAKER:你不改變數名,就算separate compiling成功也照錯不誤 12/10 00:39
推 BlueKidds:為甚麼可以又宣告extern y 祐宣告static y? 12/10 00:43
→ JASONFUNG:extern y 是使用main.c中的y,static y 是在fun.c中宣告 12/10 00:53
→ JASONFUNG:並使用y。這個程式是可以正常跑的,只是忘了要怎麼設定~ 12/10 00:54
→ JASONFUNG:請各位多提供意見給小弟... 12/10 00:55
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.127.21.174
→ Lighdark:#include"fun.c"加這行在main.c的話 114.46.34.201 12/10 01:55
→ Lighdark:結果跟把fun.c內容複製到main.c是差不多 114.46.34.201 12/10 01:56
→ Lighdark:所以這樣y當然是重複宣告啊 114.46.34.201 12/10 01:56
→ somi:分開compile然後link在一起就好了 不要includ 132.239.55.127 12/10 07:38
→ JASONFUNG:請問要如何link起來,用專案的方式嗎???140.123.107.116 12/10 12:17
→ teslare:囧 GUI真是害人不淺... 59.124.5.232 12/12 19:50
→ tinlans:建議原 po 先練習用 command line 編程式 118.160.105.67 12/14 14:06