프로그래밍 언어/C언어
시간 관련 라이브러리
김곰댕
2022. 1. 6. 19:51
728x90
헤더 파일 : time.h
1. 시간 계산
clock | 시간 계산 함수 |
difftime | 두 시간 사이의 차이 계산 |
mktime | struct tm 구조체를 통해 epoch time을 구해내는 함수 |
time | 현재 시간 |
2. 시간 변환
asctime | 시간 구조체를 문자로 변환 |
ctime | 시간 변수를 문자로 변환 |
gmtime | UTC 시간으로 변환 |
localtime | 지역 시간으로 변환 |
strftime | 날짜와 시간으로 이루어진 문자열을 struct tm으로 변환 |
3. 라이브러리 변수
변수 | 설명 |
size_t | 부호 없는 정수형 |
clock_t | 프로세서 시간 저장 변수 타입 |
time_t | 캘린더 시간 저장 변수 타입 |
struct tm | 날짜, 시간 처리 구조체 |
4. clock
항목 | 내용 |
함수원형 | clock_t clock(void); |
헤더 | time.h |
기능 | 프로그램 실행 후의 시간을 계산 |
매개변수 | void |
반환값 | 프로그램 실행 후 경과된 시간을 반환 |
![]() |
5. time
항목 | 내용 |
함수원형 | time_t time(time_t *t); |
헤더 | time.h |
기능 | 시스템의 시간 |
매개변수 | time_t *t -> 시간 정보를 받을 변수 |
반환값 | time_t -> 1970년 1월 1일 0시부터 함수를 호출할 때까지의 초 |
6. difftime
항목 | 내용 |
함수원형 | 시간의 차이를 계산 |
헤더 | time.h |
기능 | double difftime(time_t time1, time_t time0); |
매개변수 | time_t time1 (after) -> 시간 계산에서 빼지는 시간 time_t time0 (before) -> 시간 계싸나에서 빼는 시간 |
반환값 | double -> 두 시간의 차이 |
![]() |
7. ctime
항목 | 내용 |
함수원형 | char *ctime( const time_t *t); |
헤더 | time.h |
기능 | time_t 시간 값을 일반적인 시간 문자열로 변환 |
매개변수 | time_t *t -> 1970년 1월 1일 0시부터 함수를 호출할 때 까지의 초 |
반환값 | char * -> 초 단위의 시간을 읽기 편한 문자열로 변환한 문자열 포인터 |
![]() |
8. strftime
항목 | 내용 |
함수원형 | size_t strftime(char *restrict s, size_t maxsize, const char *restrict format, const struct tm *restrict timeptr); |
헤더 | time.h |
기능 | struct tm 값으로 포맷에 맞춘 시간 문자열 |
매개변수 | char *restrict s -> 문자열을 받을 버퍼 포인터 size_t maxsize -> 버퍼의 크기 const char *restrict format -> 날짜와 시간 정보를 나열하기 위한 문자열 포맷 const struct tm *restrict timeptr -> 날짜와 시간 정보 |
반환값 | size_t -> 문자열의 길이 |
![]() |
|
![]() |
9. localtime
항목 | 내용 |
함수원형 | struct tm *localtime(const time_t *t); |
헤더 | time.h |
기능 | time_t 값에서 표준 시간 지역의 시간값을 구하며, 시간 정보는 아래와 같은 struct 값 |
매개변수 | time_t *t -> 시간 time_t 값 |
반환값 | struct tm * -> 시간에 대한 struct tm 값의 포인터 |
10. asctime
항목 | 내용 |
함수원형 | char * asctime(const struct tm * timeptr); |
헤더 | time.h |
기능 | tm 구조체를 문자열로 변환 |
매개변수 | timeptr -> tm 구조체 포인터 |
반환값 | Www Mmm dd hh:mm:ss yyyy |
![]() |
728x90