在C中打印动态值

时间:2010-11-29 03:22:49

标签: c

我有一个程序来传输用C编写的文件。我想给用户一些反馈已经传输了多少字节和/或百分比。我的代码做了类似的事情:

转移...... 100个字节 转移...... 200字节 转移...... 300字节 转移...... 400字节 转移...... 500字节 转移完成!!!

正如您所看到的,如果我传输一个大文件,它将打印出一堆行。是否可以在不打印另一行的情况下更新和更改字节数?

先谢谢你们!

3 个答案:

答案 0 :(得分:2)

在标准C中无法做到这一点 - 毕竟,程序的输出可能直接用于行式打印机。

但是,在许多终端上,您可以打印\r字符以将光标返回到当前行的开头(或打印多个\b退格字符以逐个删除字符)。

答案 1 :(得分:0)

使用\r代替\n

答案 2 :(得分:0)

如果您正在编写win32应用程序,则可以使用SetConsoleCursorPosition(HANDLE, COORD)方法操纵光标的位置以覆盖特定字符:

http://msdn.microsoft.com/en-us/library/ms686025(v=VS.85).aspx