[問題] windows與Linux跨平台

看板C_and_CPP作者 (阿飄先生)時間14年前 (2010/08/02 07:20), 編輯推噓7(7011)
留言18則, 6人參與, 最新討論串1/2 (看更多)
小弟最近在寫的project遇到了一些跨平台的問題 想請教各位 1. Linux C 裡有像是conio.h 裡的getch() 一樣吃按鍵不用按下Enter的函式嗎? 2. 像是刷螢幕在Windows裡有system("cls") 而Linux裡要用system("clear") 有沒有方法(#define之類的)可以知道系統是何者然後分別使用這兩種做法? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.60.107.233

08/02 10:00, , 1F
關於2. 就在makefile define LINUX或者WIN之類的東西,
08/02 10:00, 1F

08/02 10:03, , 2F
然後在你想有所區別的code, 用 #ifdef LINUX 之類的方
08/02 10:03, 2F

08/02 10:03, , 3F
式, 把code隔開就可以了@_@"
08/02 10:03, 3F

08/02 10:25, , 4F
跟著請教一下,要從哪裡知道各平台下有定義的識別字呢?
08/02 10:25, 4F

08/02 10:26, , 5F
像是 #ifdef __win32 這種,哪裡有列表可以查
08/02 10:26, 5F

08/02 10:29, , 6F
像我只知道 __cplusplus 而已 Orz
08/02 10:29, 6F

08/02 10:42, , 7F
疑?? 我們家driver, 這些東西都是自己寫在makefile的說,
08/02 10:42, 7F

08/02 10:42, , 8F
VC有可能用IDE加在proj file上, LINUX目前看到是自己寫
08/02 10:42, 8F

08/02 10:43, , 9F
-D在makefile裡@_@" 不曉得有沒自動的方式就是了Orz
08/02 10:43, 9F

08/02 10:45, , 10F
原來是要自己指定喔 了解 @@
08/02 10:45, 10F

08/02 12:42, , 11F
那getch()呢?好像在linux裡要自己寫一個...
08/02 12:42, 11F

08/02 13:03, , 12F
請 google getch linux, 看起來應該都有人分享過了....
08/02 13:03, 12F

08/02 15:07, , 13F
看來是要自己寫一個囉
08/02 15:07, 13F

08/03 08:51, , 14F
kbhit 可以嗎??
08/03 08:51, 14F

08/03 10:10, , 15F
小弟本來也想到kbhit()去兜, 可是它也是conio.h的, 不
08/03 10:10, 15F

08/03 10:10, , 16F
知道系統是否有支援@_@"
08/03 10:10, 16F

08/05 17:40, , 17F
termios.h sys/fnctl.h 裡有你要的的東西
08/05 17:40, 17F

09/21 11:41, , 18F
小爛招 system("clear&cls"); 剛剛Linux&XP下測試OK
09/21 11:41, 18F
文章代碼(AID): #1CLW4Zj6 (C_and_CPP)
文章代碼(AID): #1CLW4Zj6 (C_and_CPP)