## C 언어 현재 날짜와 시간을 문자열로 출력

C 언어에서 현재 날짜와 시간을 문자열로 출력하는 방법은 여러 가지가 있지만, time 함수와 strftime 함수를 사용하는 방법이 일반적입니다.

// C 언어로 현재 날짜와 시간을 문자열로 출력하는 예제
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <time.h>

int main(void)
{
    time_t now = time(NULL); // 초 단위로 현재 시간을 구함
    char datetime[20]; // 문자열로 변환한 날짜와 시간을 저장할 배열

    // 날짜와 시간을 문자열로 변환
    strftime(datetime, sizeof(datetime), "%Y-%m-%d %H:%M:%S", localtime(&now));

    printf("현재 날짜 및 시간: %s\n", datetime); // 변환된 문자열을 출력

    return 0;
}

위 예제 코드에서는 time 함수로 현재 시간을 초 단위로 구한 후, strftime 함수를 사용해 날짜와 시간을 지정한 형식에 맞춰 문자열로 변환하였습니다. 변환된 문자열은 printf 함수를 사용해 출력하였습니다.

 

strftime 함수의 첫 번째 인자에는 변환된 날짜와 시간을 저장할 배열을 전달하고, 두 번째 인자에는 해당 배열의 크기를 전달합니다. 세 번째 인자에는 날짜와 시간을 출력할 형식을 지정하며, %Y는 연도를 4자리로, %m은 월을 2자리로, %d는 일을 2자리로, %H는 시를 2자리로, %M은 분을 2자리로, %S는 초를 2자리로 출력하도록 지정하였습니다. % 기호 뒤에 올 수 있는 다른 옵션들은 strftime 함수 매뉴얼에서 확인할 수 있습니다. 마지막으로 localtime 함수로 초 단위로 구한 현재 시간을 지역 시간 구조체(struct tm)로 변환하여 strftime 함수에 전달합니다.

 

 

Comments


Comments are closed