[问题] #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