struct tm {
typedef long time_t typedef long clock_t; - 헤더 함수 내부에 time_t와 clock_t를 사용자 자료형으로 long으로 정의하고 있다.
time ( time_t time(time_t * tp) ) - 현재 시간을 가로안의 tp로 넣는다. 예를 들어 current라는 int형 변수를 선언했다면 time(¤t)라고 쓴다. 그럼 cuurrent에 현재 시간이 저장된다. 시간이 잘못되어 있으면 -1을 리턴.
localtime ( struct tm * localtime (const time_t * tp) ) - tp로 들어온 시간을 지역시간으로 바꿔서 리턴. tm형 구조체 하나 선언해서 넣어주고 쓴다. 근데 아직 gmtime이랑 별차이를 못느끼겠음;;
gmtime ( struct tm * gmtime(const time_t *tp) ) - tp로 들어온 시간을 협정시계시인지 뭔지로 변환하는듯. 역시 local하고 차이를 잘 모르겠다;;
clock ( clock_t clock(void) ) -프로그램 실행 시작으로부터의 시간... 이라는데 이거 어떻게 쓰는거야 -_-;; 알아봐야겠다;
asctime ( char * asctime(const struct tm *tp) ) - 가로로 들어온 시간 구조체를 문자열로 바꿔서 반환. asctime(localtime(¤t)) 이런것도 가능했다. 신기하더라. 결과는 Mon Jan 18 14:15::05 2010 이런식으로 나왔다.
ctime ( char * ctime (const time_t * tp) ) - 결과는 Mon Jan 18 14:15::05 2010 이런식으로 나왔다. 지역시간으로 바꿔서 문자로 하는것 같은데 위에랑 차이를 잘 모르겠다. -_-;; 위에랑 아래의 차이는 그냥 가로안에 자료형 차이?
difftime ( double difftime(time_t time2 , time_t time1) ) - 사용법이야 뭐 time(&1) time(&2) 해가지고 보내는건 알겠는데 언제 쓰는걸까 -_-;;; 아직 잘 모르겠다. 아. 프로그램 시작할때 1을 받고 2를 해서 프로그램이 얼마나 걸리는지 계산하려나?
mktime ( time_t mktime(struct tm *tp) ) - 지역시간을 표준시간으로 바꿔준다는데 바꿔도 별 차이 없던데;; time(¤t); printf("%lf", difftime(current, ggg)); ==> 결과가 그냥 0.000000 나왔다.
strftime ( size_t strftime(char * s, size_t smax, const char * fmt, const struct tm * tp) ) - 정해진 숫자보다 많은 수가 만들어지면 0을 리턴하고 가로 안에것을 해석하면 ( 저장할 배열, 저장가능한 최대수, "저장되는 문자열", 들어오는 시간정보 )
char ch[128]; struct tm * local; time(¤t); strftime( ch, 128, "Today is %A, day %d of %B in the year %Y.\n", local ); puts(ch);
그러면 출력이 Monday 18 January 2010 Today is %A, day %i of %B in the year %Y.
%a = 요일 이름의 약자 위의 예를 들어서 하자면 monday가 mon이 되어서 출력되더라. %A = 요일 이름. %b = 달의 이름 약자. %b = 달의 이름 %c = 지역표기 시간 ( 01/18/10 14:57:02 이런식으로 출력됨) %d = 날짜 %H = 시간 00~23시 까지 표시됨 %I = 시간 1~12시 까지 표시되는데 오전 오후는 표시 안되더라? %m = 달 %M = 분 %q = 오전 오후 표시해준다. %S = 분 %U = 일년의 몇번째 주냐 %w = 요일표시 일요일이 0으로 6까지 표시됨 %W = 일년중 몇번째 주인가 U나 W나 그게그거 %x = 지역 날짜. %c 모습에서 날짜만 보여진다고 보면됨. %X = 지역 시간 마찬가지. %y = 년도 현재 2010년인데 표시는 10으로 됨 00~99까지 되는듯? %Y = 년도 2010으로 출력 %Z = 시간 지역 이름 %% = % [출처] #include <time.h> - 날짜와 시간에 대한 함수|작성자 안녕 |
'프로그래밍(Programming) > c++, 11, 14 , 17, 20' 카테고리의 다른 글
operator [] 를 정의하지 않고 사용하기 (0) | 2013.02.27 |
---|---|
rand() 함수에 대해서... (0) | 2013.02.01 |
템플릿함수 특수화 분리하기 (0) | 2013.01.30 |
COleVariant Class 구조를 이용한 형변환 (0) | 2013.01.28 |
GetAsyncKeyState 깔끔한 정리 (0) | 2013.01.23 |