日付を表示する
VC2005(WIN32API)で今日の日付を出力するプログラム。
#include "stdafx.h" #include <stdio.h> #include <time.h> int _tmain(int argc, _TCHAR* argv[]) { __int64 ltime; struct tm local; _time64( <ime ); ltime += (9 * 60 * 60); _gmtime64_s(&local,<ime); char str[30]; sprintf(str,"001_%04d%02d%02d_%02d%02d~%02d",local.tm_year+1900 ,local.tm_mon+1 ,local.tm_mday ,local.tm_hour ,local.tm_min ,local.tm_sec ); printf("%s\n",str); return 0; }
注意点はtm_yearは1900年からの経過年が返ってくるので+1900することと、tm_monは0スタートなので+1すること、日付は、1年365日中の日付が欲しい場合はtm_yday、月の日付が欲しいときはtm_mdayを使う。
こういうデータ処理ってほとんどやったことがないから、詳しくないんだよな。
それから、printfで"2"を"02"と表示したい場合は、%02dにする(久々すぎてすっかり忘れてた)