2017-09-18 7 views
0

整数をマクロと正しく一致させるにはどうすればよいですか?私は後に何かを追加することはできませんので 、私は「」(エラー)を2回ここでそれを呼び出す必要がありますマクロとの整数の一致

#define concat(a,b,c) a##b##c 
dim as integer a=10,b=20,c=30,d 
d = a concat(*100+,,)b 
d = d concat(*100+,,)c 
?d 'output = 102030 
sleep 

答えて

0

は、私はこれはでは動作しませんFreeBASICのフォーラム

#define concat(a,b,c) (((a)*100+(b))*100+(c)) 
dim as integer a=10,b=20,c=30,d 
d = concat(a,b,c) 
?d 'output = 102030 
sleep 
+0

から解決策を見つけましたすべての場合。 cが300の場合、10020300ではなく1002300になります。もっと正確なものが必要な場合は、私の答えを見てください。 – Joe

1
#define concat(a,b,c) val(str(a)+str(b)+str(c)) 
関連する問題