//用time(0)计时,并用手工计数跳毫秒 使用结构 tm 格式化时间ConsoleApplication1.cpp
#include <iostream>
#include <ctime>
#pragma warning(disable:4996)
//using namespace std;
int main()
{
// 基于当前系统的当前日期/时间
time_t now = time(0); //第零00次计时
std::cout << "1970 到目前经过秒数:" << now << std::endl;
tm * ltm = localtime(&now); //tm应该是静态结构, time_t now;是普通结构体
// 输出 tm 结构的各个组成部分
std::cout << "年: " << 1900 + ltm->tm_year << std::endl;
std::cout << "月: " << 1 + ltm->tm_mon << std::endl;
std::cout << "日: " << ltm->tm_mday << std::endl;
std::cout << "时间: " << ltm->tm_hour << ":";
std::cout << ltm->tm_min << ":";
std::cout << ltm->tm_sec << std::endl;
time_t now01 = time(0);//只是临时初始化
tm * tmp_lt01 = localtime(&now01);
for (unsigned long long i = 0; true; ++i) {//for110i
//-下面可以写 需要计时的代码------------------------------
//=上面可以写 需要计时的代码==============================
_sleep(0); //或让出CPU去执行其它的线程 或 进程
now01 = time(0); //第一01次计时
if (now==now01) {//if220//秒数不变,则跳毫秒…
if(0==(i%1 /*00*/)) printf(" %d", i/1);//没1000次 显示 一次,以免拖慢cpu进程
}//if220
else if ((now!=now01)) {//if220else220//跳秒了, 跳出并初始化
tm * tmp_lt01 = localtime(&now01);
std::cout << "[" << tmp_lt01->tm_sec << std::endl; goto lab440; break;
}//if220else220
}//for110i
lab440: std::cout <<"{"<< tmp_lt01->tm_sec << std::endl;
//
}//main
1970 到目前经过秒数:1689305133
年: 2023
月: 7
日: 13
时间: 23:25:33
0[34
{34