看板 C_and_CPP 關於我們 聯絡資訊
小弟目前遇到一個問題 為了剛開始方便這樣寫 #define N 100 之後寫了許多function都直接拿 N 來用 如果之後要讓使用者自己輸入新的 N 執行 請問要怎麼處理那些在函式中的 N 呢?? @@ 只能在宣告函式時多餵一個參數進去嘛? 麻煩板上的大大了! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.65.83 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1410795609.A.BF4.html
PoorLoser: 要變就只能用變數啊 09/16 00:13
PoorLoser: #define N SetN() 然後宣告靜態變數用 Set() 改值 09/16 00:15
Killercat: ....最簡單的做法就是一開始就別用define 沒反串 真的 09/16 01:11
Killercat: 有好端端的const不用跑去用define 這沒道理啊 XD 09/16 01:11
Killercat: 是有什麼記憶體上特殊的需求嗎... 09/16 01:11
Killercat: define少數幾個合理的用途 就是compile time才決定要 09/16 01:15
Killercat: 什麼值 用gcc -D傳進去,其他多半都考慮一下const吧 09/16 01:16
PoorLoser: 也不能說少數啦, #define 好處也不少 09/16 01:54
PoorLoser: 除了 make 可以用 -D 而 const 不行, const 編譯完會肥 09/16 01:57
PoorLoser: 一點, 可讀性略差 09/16 01:59
PoorLoser: 處理浮點數跟字串時注意一點, #define 還是很好用的 09/16 01:59
claude51315: 謝謝樓上兩位大大~ 09/16 07:56