ツールのタグ
C++ の日付と時刻
C++ 標準ライブラリは、いわゆる日付型を提供しません。 C++ は、日付と時刻の操作に関して C 言語の構造と関数を継承します。日付と時刻に関連する関数と構造体を使用するには、C++ プログラムで <ctime> ヘッダー ファイルを参照する必要があります。
時間に関連するタイプには、 Clock_t、time_t、size_t、tm の 4 つがあります。タイプ Clock_t、size_t、および time_t は、システムの時刻と日付を特定の整数として表します。
構造体型tm 日付と時刻をC構造体の形式で保存します。 tm構造体の定義は次のとおりです:
struct tm {
int tm_sec; // 秒,正常范围从 0 到 59,但允许至 61
int tm_min; // 分,范围从 0 到 59
int tm_hour; // 小时,范围从 0 到 23
int tm_mday; // 一月中的第几天,范围从 1 到 31
int tm_mon; // 月,范围从 0 到 11
int tm_year; // 自 1900 年起的年数
int tm_wday; // 一周中的第几天,范围从 0 到 6,从星期日算起
int tm_yday; // 一年中的第几天,范围从 0 到 365,从 1 月 1 日算起
int tm_isdst; // 夏令时
}C/C++における日付と時刻に関する重要な関数を以下に示します。これらの関数はすべて C/C++ 標準ライブラリの一部です。各関数の詳細は C++ 標準ライブラリで確認できます。
| シリアル番号 | 関数と説明 |
|---|---|
| 1 | time_t time(time_t *time); この関数は、システムの現在のカレンダー時刻、1 月 1 日からの経過秒数を返します。 1970 年。システムに時間がない場合は、.1 が返されます。 |
| 2 | char *ctime(const time_t *time); これは、文字列 日 月 年 時:分:秒 年 の形式で現地時間を表す文字列ポインタを返します。 現在の日付と時刻以下の例では、現地時間と協定世界時 (UTC) を含む、現在のシステムの日付と時刻を取得します。 #include <iostream>
#include <ctime>
using namespace std;
int main( )
{
// 基于当前系统的当前日期/时间
time_t now = time(0);
// 把 now 转换为字符串形式
char* dt = ctime(&now);
cout << "本地日期和时间:" << dt << endl;
// 把 now 转换为 tm 结构
tm *gmtm = gmtime(&now);
dt = asctime(gmtm);
cout << "UTC 日期和时间:"<< dt << endl;
}上記のコードをコンパイルして実行すると、次の結果が生成されます: 本地日期和时间:Sat Jan 8 20:07:41 2011 UTC 日期和时间:Sun Jan 9 03:07:41 2011 構造体 tm を使用した時刻のフォーマットtm 構造体は、C/C++ で重要な日付と時刻に関連する操作を処理する場合に特に役立ちます。 tm 構造体は日付と時刻を C 構造体として保持します。ほとんどの時間関連関数は tm 構造体を使用します。次の例では、tm 構造体とさまざまな日付と時刻に関連する関数を使用します。 構造体の使用を練習する前に、C 構造体の基本を理解し、arrow -> 演算子を使用して構造体のメンバーにアクセスする方法を知っておく必要があります。 #include <iostream>
#include <ctime>
using namespace std;
int main( )
{
// 基于当前系统的当前日期/时间
time_t now = time(0);
cout << "Number of sec since January 1,1970:" << now << endl;
tm *ltm = localtime(&now);
// 输出 tm 结构的各个组成部分
cout << "Year: "<< 1900 + ltm->tm_year << endl;
cout << "Month: "<< 1 + ltm->tm_mon<< endl;
cout << "Day: "<< ltm->tm_mday << endl;
cout << "Time: "<< 1 + ltm->tm_hour << ":";
cout << 1 + ltm->tm_min << ":";
cout << 1 + ltm->tm_sec << endl;
}上記のコードをコンパイルして実行すると、次の結果が生成されます: Number of sec since January 1, 1970:1294548238 Year: 2011 Month: 1 Day: 8 Time: 22: 44:59 関連動画
ホットAIツール
Undress AI Tool
脱衣画像を無料で
AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。
Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ
Stock Market GPT
AIを活用した投資調査により賢明な意思決定を実現
人気の記事
モニターの色が褪せたり黄色くなったりするのを修正するにはどうすればよいですか?
4週間前 By 下次还敢
プレミア公開で字幕を追加する方法
3週間前 By 下次还敢
Windows10がインターネットに接続できない_Win10ネットワークリセットコマンド詳細解説
2週間前 By DDD
『サイバーパンク 2077』が新しい種類のゲームで 2026 年に正式に復活
1 か月前 By Jack chen
ホットトピック
# Douyin レベル価格表 1-75
20450
7
# Wi-FiにIPが割り当てられていないことが表示される
13593
4
# 確認コードを受け取るための仮想携帯電話番号
11933
4
# Gmailメールのログイン入り口はどこですか?
8937
17
人気のツール
メモ帳++7.3.1
使いやすく無料のコードエディター
SublimeText3 中国語版
中国語版、とても使いやすい
ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
ドリームウィーバー CS6
ビジュアル Web 開発ツール
SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3) |












![PHP 実践開発入門: PHP クイック作成 [中小企業フォーラム]](https://img.php.cn/upload/course/000/000/035/5d27fb58823dc974.jpg)









