C

[C] 254 두 날짜 간의 차이 구하기

qkrwngus 2021. 2. 9. 21:09

Desc :

 

 


Source Code :

#include <stdio.h>
#include <time.h>

void main()
{
	struct tm t1, t2, t3;
	int n1, n2;
	time_t n3;

	t1.tm_year = 2021 - 1900; // 1900기준
	t1.tm_mon = 2 - 1;
	t1.tm_mday = 9;
	t1.tm_hour = 1;
	t1.tm_min = 12;
	t1.tm_sec = 50;

	t2.tm_year = 2021 - 1900;
	t2.tm_mon = 2 - 1;
	t2.tm_mday = 9;
	t2.tm_hour = 3;
	t2.tm_min = 35;
	t2.tm_sec = 22;

	n1 = mktime(&t1);
	n2 = mktime(&t2);

	n3 = n2 - n1;
	t3 = *gmtime(&n3);
	t3.tm_year -= 70; // 1970기준이므로 - 70

	printf("날짜1: %4d - %02d - %02d %02d:%02d:%02d \n"
		, t1.tm_year + 1900, t1.tm_mon + 1, t1.tm_mday, t1.tm_hour, t1.tm_min, t1.tm_sec);

	printf("날짜2: %4d - %02d - %02d %02d:%02d:%02d \n"
		, t2.tm_year + 1900, t2.tm_mon + 1, t2.tm_mday, t2.tm_hour, t2.tm_min, t2.tm_sec);

	printf("날짜 차이: %4d - %02d - %02d %02d:%02d:%02d \n"
		, t3.tm_year, t3.tm_mon , t3.tm_mday, t3.tm_hour, t3.tm_min, t3.tm_sec);
}

 


Result :

 

책대로 타이핑하면 실행이 안되고, 자료형을 바꿔서 하면 결과가 이상하게,,, 나오네요,,