[問題] #define過的東西

作者: claude51315 (淼)   2014-09-15 23:40:07
小弟目前遇到一個問題
為了剛開始方便這樣寫
#define N 100
之後寫了許多function都直接拿 N 來用
如果之後要讓使用者自己輸入新的 N 執行
請問要怎麼處理那些在函式中的 N 呢?? @@
只能在宣告函式時多餵一個參數進去嘛?
麻煩板上的大大了!
作者: PoorLoser (廢文製造機)   2014-09-16 00:13:00
要變就只能用變數啊#define N SetN() 然後宣告靜態變數用 Set() 改值
作者: Killercat (殺人貓™)   2014-09-16 01:11:00
....最簡單的做法就是一開始就別用define 沒反串 真的有好端端的const不用跑去用define 這沒道理啊 XD是有什麼記憶體上特殊的需求嗎...define少數幾個合理的用途 就是compile time才決定要什麼值 用gcc -D傳進去,其他多半都考慮一下const吧
作者: PoorLoser (廢文製造機)   2014-09-16 01:54:00
也不能說少數啦, #define 好處也不少除了 make 可以用 -D 而 const 不行, const 編譯完會肥一點, 可讀性略差處理浮點數跟字串時注意一點, #define 還是很好用的
作者: claude51315 (淼)   2014-09-16 07:56:00
謝謝樓上兩位大大~

Links booklink

Contact Us: admin [ a t ] ucptt.com