- ベストアンサー
現在時刻の表示について
MFC(VC++6.0)でプログラムを製作しています。超初心者です。みなさんには簡単なことなのかも知れませんが、私には分かりません。 現在時刻の「取得」「表示」についてわかりません。 ご存知の方、ご教授願います。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Windowsとかに限定しない Cの範囲でやるとしたら こんな感じ #include <stdio.h> #include <time.h> void main(void){ time_t now; time(&now); /* 現在時刻の取得 */ /* Fri Dec 17 17:57:14 2004 の様な形式で表示 */ fprintf(stdout,"%s\n",ctime(&now)); }
その他の回答 (2)
- JaritenCat
- ベストアンサー率37% (122/322)
参考まで、いろんなやりかた。。。 #include <stdio.h> #include <time.h> int main(void){ time_t now; struct tm *ltm; char *wday[]={"日","月","火","水","木","金","土"}; /* 曜日表示用 */ char s[256]; /* strftime関数用 */ /* 取得 */ if (time(&now) == (time_t)-1) { printf("時刻取得できませんでした\n"); return -1; } ltm=localtime(&now); /* 表示 ctime関数 */ printf("%s",ctime(&now)); /* 表示 tm構造体 */ printf("%4d年%2d月%2d日",1900+ltm->tm_year, 1+ltm->tm_mon, ltm->tm_mday); printf("(%s)",wday[ltm->tm_wday]); printf("%2d時%2d分%2d秒\n", ltm->tm_hour, ltm->tm_min, ltm->tm_sec); /* 表示 asctime関数 */ printf("%s",asctime(ltm)); /* 表示 strftime関数 */ strftime(s,sizeof(s),"%c",ltm); printf("%s",s); return 0; }
お礼
詳しい説明ありがとうございます。こういうやり方もあるんですね。
- 405
- ベストアンサー率50% (17/34)
MFCならCTimeクラスを使えば良いと思います。 例) // 現在時刻の取得 CTime t=CTime::GetCurrentTime(); // tの表示 CString s=t.Format( "%Y/%m/%d %H:%M" ); AfxMessageBox(s);
お礼
おー。なるほど!さっそくやってみます。
お礼
早速の回答ありがとうございます。これを参考にがんばってみます。