c語言獲取當地時間和UTC時間

2020-08-12 14:22:17
#include  <stdio.h>  
#include  <time.h>  
 
int main()
{
	time_t t = time(NULL); 
	tm *tp = localtime(&t); 
	
	// 北京時間
	printf("%d/%d/%d\n", tp->tm_mon+1, tp->tm_mday, tp->tm_year + 1900);  
	printf("%d:%d:%d\n", tp->tm_hour, tp->tm_min, tp->tm_sec); 
	
	return 0;
}
#include  <stdio.h>  
#include  <time.h>  
 
int main()
{
	time_t t = time(NULL);  // UTC秒數
	tm *tp = localtime(&t); 
 
	// 北京時間
	printf("%d/%d/%d\n", tp->tm_mon+1, tp->tm_mday, tp->tm_year + 1900);  
	printf("%d:%d:%d\n", tp->tm_hour, tp->tm_min, tp->tm_sec); 
 
	// UTC今天秒數
	int second1 = t % (24 * 60 * 60);
	printf("%d\n", second1);
 
	// 北京時間今天秒數
	int second2 = tp->tm_hour * 3600 + tp->tm_min * 60 + tp->tm_sec;
	printf("%d\n", second2);
 
	// UTC時間與北京時間相隔的小時數
	printf("%d\n", (second1 - second2) / 3600); // -8
	
	return 0;
}
#include  <time.h>  
#include  <stdio.h>  
#include <wtypes.h>
 
int main(int argc, char* argv[])
{
	SYSTEMTIME stCurTime = {0};
	GetSystemTime(&stCurTime); // UTC時間
	printf("%d/%d/%d\n", stCurTime.wMonth, stCurTime.wDay, stCurTime.wYear);  
	printf("%d:%d:%d\n", stCurTime.wHour, stCurTime.wMinute, stCurTime.wSecond); 
 
	printf("----------\n");
 
	GetLocalTime(&stCurTime);  // 北京時間
	printf("%d/%d/%d\n", stCurTime.wMonth, stCurTime.wDay, stCurTime.wYear);  
	printf("%d:%d:%d\n", stCurTime.wHour, stCurTime.wMinute, stCurTime.wSecond); 
	
	return 0;
}

參考鏈接