Preface:
在windows底下如果不想藉由開發工具做debug時,筆者我多數使用system("pause")這個指令,但是一到了linux之後,這個指令完全無效,因為linux的termainl底下本來就沒有這個指令,面對這樣的問題,網路上有一堆解決方式,這裡提供筆者我自己常用的方法.
方案一:
- #include
- #define PAUSE printf("Press Enter key to continue..."); fgetc(stdin);
- int main(void)
- {
- PAUSE
- printf("system(\"pause\") for linux!\n");
- return 0;
- }
當然如果你夠懶的話,就把他寫成header file,以後要使用就載入header file來使用.
方案二:
直接產生一個類似pause的程式,然後把他放在 /usr/bin 裡面,pause的實做程式碼如下:
- #include
- void main(void)
- {
- printf("Press Enter key to continue...");
- fgetc(stdin);
- }
PS. fgetc() 必須讀到 Enter 的keycode才會終止當下的輸入,如果你要達到完全的任意按鍵就執行下一行,可以參考 [C/C++] getch() for linux.
沒有留言:
張貼留言