在C Program code 出現 #if , #else , 同 if , else 之類既command 分別在邊度 ?

有冇人可以解答下小弟 thx

#if WIN32

#else
....

呢d 係tell 個compiler 知compile which code, 如果define 左係windows 就點, linux  就點...

TOP

#if ... #else 係 compiler compile 時用的;
而if ... else 就係run time 用的 ...

TOP

off topic
新手想學C 但要用咩software寫?

TOP

原帖由 zzaaqq 於 2009-3-20 19:19 發表
off topic
新手想學C 但要用咩software寫?


如果是console
個人比較喜歡dev c++

TOP

原帖由 raydan 於 2009-3-20 15:34 發表
#if WIN32

#else
....

呢d 係tell 個compiler 知compile which code, 如果define 左係windows 就點, linux  就點...



再請教 :
如果program 如下
#if 0
//program code ...
#else
//program code .......
#endif

個program 永遠只會行else 個句 , 咁#if 0 其實用黎做乜 ? 算唔算係永久disable 既programming code??

TOP

原帖由 rt 於 2009-3-20 17:12 發表
#if ... #else 係 compiler compile 時用的;
而if ... else 就係run time 用的 ...


compilier 都係run 到個d #if , #else??

TOP

原帖由 孔明仔 於 2009-3-21 04:14 發表



再請教 :
如果program 如下
#if 0
//program code ...
#else
//program code .......
#endif

個program 永遠只會行else 個句 , 咁#if 0 其實用黎做乜 ? 算唔算係永久disable 既programming code??

點解要#if 0
if (condition)<<個condition要1先會run入面既野...0即係一世都唔會RUN...

原帖由 孔明仔 於 2009-3-21 04:14 發表


compilier 都係run 到個d #if , #else??

#if, #else 係for compilier既

TOP

#if, #else 最常用既可以講係用來衡量環境變數. 例如OS, processor architecture 等. 令到某D code可以因環境而有所不同. 例如某D code在Visual Studio會complie唔到. 又或者係IBM PowerPC時個個logic會變錯左.
另外, 你自己都可以define幾個. 例如你compile時可以自己加入parameter, 令佢compile唔同部份既code, 令到一個application可以乜都唔改就compile出幾個edition, e.g. Lite version or Full version.

TOP

原帖由 無忌 於 2009-3-21 14:40 發表
#if, #else 最常用既可以講係用來衡量環境變數. 例如OS, processor architecture 等. 令到某D code可以因環境而有所不同. 例如某D code在Visual Studio會complie唔到. 又或者係IBM PowerPC時個個logic會變錯左.
另外 ...

咁我理解了 , thx a lot

TOP