2012-02-19 123 views
1

我正在使用C++在Xcode中製作圖書館管理系統。由於Xcode不支持conio.h這樣的庫,並且系統「cls」不起作用。當我希望從一個菜單切換到另一個菜單時,我應該使用什麼代碼清除屏幕?在Xcode清除屏幕

+0

你是在說一個命令行應用程序(你只需在Xcode中編寫和啓動)?還是一個Xcode插件?至少對我來說,你的問題不是很清楚。 – 2012-02-19 09:54:38

+0

系統(「清除」) – rasmus 2012-02-19 09:54:59

+0

我正在討論命令行應用程序。抱歉。 – 2012-02-19 10:43:11

回答

2

看看這個。

https://discussions.apple.com/thread/1064635?start=0&tstart=0

沒有直接的方法來做到這一點; system()命令在Mac(Unix)上不起作用。一種選擇是使用代碼添加很多空格,即\ n或其他方式是使用curses庫 #include <curses.h>(curses.h),然後使用system("clear"),這基本上會做同樣的事情。所以,最好是使用代碼手動打印空格而不是使用某個庫。

你可以爲POSIX(UNIX,LINUX,Mac OSX版等)爲基礎的系統做一件事[注:我沒有測試它自己]:

#include <unistd.h> 
#include <term.h> 
void ClearScreen() 
{ 
    if (!cur_term) 
    { 
    int result; 
    setupterm(NULL, STDOUT_FILENO, &result); 
    if (result <= 0) return; 
    } 
    putp(tigetstr("clear")); 
} 

你必須鏈接到合適的庫(-lcurses,-lterminfo等之一)編譯最後一個。 (來源:http://www.cplusplus.com/forum/articles/10515/