[問題] 變數與preprocessor

看板C_and_CPP (C/C++)作者 (adios)時間16年前 (2010/01/08 17:31), 編輯推噓1(105)
留言6則, 3人參與, 最新討論串1/1
目前的code是這樣.. #define DEVICE(n) "/dev/device" #n "" int main(void) { int i; int fd; scanf("%d",&i); fd=open(DEVICE(i),0); ^^^^^^^^^ ...... 想請問一下 ^^^^指的地方該怎麼改 才能讓變數發生效用呢..謝謝 -- 5L36f6d6I5207573K657273206f6E62066Y697265O666f78206172U65207375636b2e -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.165.11.107

01/08 17:42, , 1F
你想要i讓使用者輸入後才代到DEVICE() macro去?? 照
01/08 17:42, 1F

01/08 17:42, , 2F
preprocessor的運作時機, 理論上應該是辦不到的吧@_@"
01/08 17:42, 2F

01/08 17:42, , 3F
個人覺得用sprintf()在run-time處理就可以了XD
01/08 17:42, 3F

01/08 18:06, , 4F
preprocessor 的處理是 compile-time,使用者的輸入是在
01/08 18:06, 4F

01/08 18:06, , 5F
run-time...
01/08 18:06, 5F

01/08 23:43, , 6F
thx~
01/08 23:43, 6F
文章代碼(AID): #1BHljbdi (C_and_CPP)
文章代碼(AID): #1BHljbdi (C_and_CPP)