我正在制作一个小程序,从我的时区(EST)获取当前时间((这也是在错误的时区或者不想处理夏令时,因为它增加了额外的时间)小时))并在控制台中打印出来。
我正在寻找一种方法让控制台刷新(无论如何,我使用禁忌系统(" cls")每次我使用的整数都会改变。) / p>
所以每秒控制台都会清除先前输出的时间,然后打印出当前时间。
如果需要,我可以自由地获得另一个图书馆(不愿意)。
答案 0 :(得分:0)
每次更新控制台上的值时都需要打印回车\r
字符,如果打印换行符,则需要flush
输出流。
例如
std::cout << "\rValue 1 "; /// Output should be of equal no. of chars every time
std::cout << "\rUpdate 1";
std::cout << "\rUpdate 2";
. . .
回车符(\r
)返回当前行的第一个位置,而不是转到下一行。
您可以通过
刷新输出流std::cout.flush();
答案 1 :(得分:0)
#include <iostream>
#include<ctime>
#include<unistd.h>
using namespace std;
int main()
{
time_t x,y;
time(&x);
cout<<ctime(&x);
for(;;x++)
{
sleep(1);
cout<<"\r"<<ctime(&x);
}
}
我希望这能满足您的需求。