用time(0)计时230101并用手工计数跳毫秒&使用结构tm

//用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

猜你喜欢

转载自blog.csdn.net/aw344/article/details/131719800
今日推荐