728x90
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <ctime>
using namespace std;

int main(void)
{
	time_t now = time(NULL);
	tm* ptm = localtime(&now);

	char buffer[64];
	strftime(buffer, 64, "%Y년 %m월 %d일, %H시 %M분 %S초 입니다.(%p)\n", ptm);

	cout << buffer;
	return 0;
}

 

 

일반적으로 날짜를 구할 땐, ctime() 함수를 주로 이용했습니다. 여기에 더해, strftime 과 time_t 를 이용하여

간편하게 날짜를 다룹니다.

 

날짜와 시간을 얻을 수 있는 time_t 변수를 선언합니다. NULL은 아무것도 갖고 있지 않다. 즉 비었다는 의미입니다.

tm 은 구조체 (struct) 로 localtime() 함수를 이용해 int 날짜와 시간 값을 대입합니다.

 

 

 

 

 

그리고 가끔 이러한 에러가 뜨시는 분들이 있으실텐데 이 에러 메시지는 scanf나 strcpy, localtime

과 같은 보안적으로 안전하지 못한 함수들을 호출할 때 나타납니다.

 

그럴땐 _CRT_SECURE_NO_WARNINGS 매크로 정의 후 불안전한 함수를 사용하도록 허락합니다

 

-> #define _CRT_SECURE_NO_WARNINGS

728x90