2012-12-05 60 views
1

有時,當我安裝程序時,我在控制檯窗口(或其他動態更改的文本)中看到進度條。它被顯示,並在同一行字符串中更改。當我使用printf或其他功能時,我會編寫下一個文本,但我無法在控制檯窗口中修改已存在的文本。我怎樣才能通過C?更改控制檯窗口中的現有文本

回答

3

這種效果最簡單的方法是使用脫字符返回\r字符,它可以讓你寫上一行。


如果你想有到控制檯的緩衝區(即在特定的X寫/ Y位置,而不是一行一行地)直接訪問,那麼你很可能尋找一個幫手圖書館像pdcurses

2

如果你想繼續使用printf並且在「change」的文本中使用\r這是在linux上的回車。 雖然它不會在MAC上工作,因爲它意味着換行符。

如果你這樣做,我建議使用ioctl隱藏插入符號,以防止閃爍和醜陋的特性。

如果你想要一個更好的方式來操作屏幕上的文字,你可以看看ncurses