ctime() — 시간을 문자 스트링으로 변환
형식
#include <time.h>
char *ctime(const time_t *time);
언어 레벨
ANSI
스레드세이프
아니오
ctime_r()을 대신 사용하십시오.
로케일 감지
이 함수의 작동은 현재 로케일의 LC_TOD 범주의 영향을 받을 수 있습니다. 자세한 정보는 CCSID 및 로케일 이해의 내용을 참조하십시오.
설명
ctime() 함수는 time이 가리키는 시간 값을 문자 스트링 양식의 로컬 시간으로 변환합니다. time 값은 일반적으로 time() 함수를 호출하여 얻습니다.
ctime()이 생성하는
스트링 결과는 정확히 26자를 포함하며 형식은 다음과 같습니다.
"%.3s %.3s%3d %.2d:%.2d:%.2d %d\n"
예를 들어, 다음과 같습니다.
Mon Jul 16 02:03:55 1987\n\0
ctime() 함수는 24 시 시계 형식을 사용합니다. 요일은 Sun, Mon, Tue, Wed, Thu, Fri, Sat로 약어화됩니다. 월은 Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec로 약어화됩니다. 모든 필드는 일정한 너비를 갖습니다. 숫자가 하나뿐인 날짜 앞에는 0이 옵니다. 줄 바꾸기 문자(\n)와 널(null) 문자(\0)는 스트링의 마지막 두 위치를 차지합니다.
리턴값
ctime() 함수는
문자 스트링 결과를 가리키는 포인터를 리턴합니다. 함수가 실패하면 널(NULL)을 리턴합니다. ctime() 호출은 다음과 같습니다.
asctime(localtime(&anytime))
참고: asctime() 및
ctime() 함수와 기타 시간 함수는
정적으로 할당된 공통 버퍼를 사용하여 리턴 스트링을 보유할 수 있습니다. 이러한 함수 중 하나를 각각 호출하면 이전 호출의 결과를 영구 삭제할 수 있습니다. asctime_r(), ctime_r(), gmtime_r(),
localtime_r() 함수는
정적으로 할당된 공통 버퍼를 사용하여 리턴 스트링을 보유하지 않습니다. 재진입을 원할 경우
asctime(),
ctime(),
gmtime(),
localtime() 대신 이러한 함수를 사용할 수 있습니다.
예
이 예는 time()을 사용하여
시스템 시계를 폴링합니다. 그리고 나서 현재 날짜 및 시간을 제공하는 메세지를 인쇄합니다.
#include <time.h>
#include <stdio.h>
int main(void)
{
time_t ltime;
time(<ime);
printf("the time is %s", ctime(<ime));
}
관련 정보
- asctime() — 시간을 문자 스트링으로 변환
- asctime_r() — 시간을 문자 스트링으로 변환(재시작 가능)
- ctime_r() — 시간을 문자 스트링으로 변환(재시작 가능)
- ctime64() — 시간을 문자 스트링으로 변환
- ctime64_r() — 시간을 문자 스트링으로 변환(재시작 가능)
- gmtime() — 변환 시간
- gmtime64() — 변환 시간
- gmtime64_r() — 변환 시간(다시 시작 가능)
- gmtime_r() — 변환 시간(다시 시작 가능)
- localtime() — 변환 시간
- localtime64() — 변환 시간
- localtime64_r() — 변환 시간(다시 시작 가능)
- localtime_r() — 변환 시간(다시 시작 가능)
- mktime() — 로컬 시간 변환
- mktime64() — 로컬 시간 변환
- setlocale() — 로케일 설정
- strftime() — 날짜/시간을 스트링으로 변환
- time() — 현재 시간 판별
- time64() — 현재 시간 판별
- printf() — 형식화된 문자 출력
- <time.h>