[問題] C語言 - Struct 在大型程式專案中的使用?
看板C_and_CPP (C/C++)作者RaiGend0519 (鮮度減半,老了0.5歲囧)時間16年前 (2009/04/04 03:55)推噓2(2推 0噓 1→)留言3則, 3人參與討論串1/3 (看更多)
[顯示][隱藏]
我現在再寫一個回合制的對戰小遊戲
只是拿來自己玩一玩
可是現在碰到一個瓶頸
因為要寫一堆Functions
所以我就用專案的方式把原始碼分成好幾個 .o檔
可是現在碰到一個大問題:
「如果我在main.o裡面使用了struct,
並在main.o創造一個使用該struct的全域變數並給予初值,
另外一個struct no.2是只有寫出一個使用no.2的全域變數但沒給初值,
那其他xxx.o裡面的Function如果有用到這兩個變數,
並對其作更改或儲存時,
要怎麼作才能讓其他的xxx.o可以使用到我設定的struct變數?」
就像我現在設定一個在main.o:
struct pc {
int a;
int b;
};
struct pc pcgame={1,2};
struct pc2 {
int c;
int d;
}pcgame2;
然後我在其他.o檔裡面有使用到:
if(pcgame.a > pcgame.b)
XXXXXXXX;
else
XXXXXXXX;
或著
pcgame2.c=((rand()%3)+1);
這樣的時候
該怎麼作才能讓他們之間可以互相使用?
因為我怎麼試他都說沒有定義
有人說用#define把struct跟創造的結構變數寫進去...
可是這樣不是就不能更動了嗎= ="...
我試著把struct做成.c檔
然後include近來
並在main.o設定全域變數
但是Dev c++說這樣是"muiltily define pcgame"...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.64.174.87
推
04/04 07:04, , 1F
04/04 07:04, 1F
→
04/04 09:43, , 2F
04/04 09:43, 2F
推
04/05 08:53, , 3F
04/05 08:53, 3F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章