C++で日付判定を行いたい!!
C++でデータを1バイトづつ呼んで(For文で回す)日付かどうかを判断したいのですが、VBのようなIsDateみたいな関数がないので、同じように扱える関数がC++であったら教えてください。
対応する関数が無い場合は参考になるようなサイトでもやり方でも結構ですので、教えてください。
例>
tp=&buf[4*16+(16*3)]; //ポインタ
for( ixs = 0;ixs<50;ixs++){
//日付判定チェックがしたい
sprintf(aaa,"%08d",*((unsigned int*)(tp+ixs)));
}
宜しくお願いします。
No.3ベストアンサー
- 回答日時:
汎用的に考えれば、以下の関数が使えるんじゃないかなーと
- sscanf()
- localtime()
- mktime()
処理概要は、
sscanf() で 値を読み取って、struct tm に設定。
mktime()で time_t を取得してlocaltime() で struct tmを再度取得
sscanf()で読み取った値と逆引きした日付が一致するかチェック
こんなかんじでしょうかね。
各関数のエラーチェックも忘れずに
No.2
- 回答日時:
「1バイトづつ呼んで日付かどうかを判断」って, どのような操作を意図しているのでしょうか?「日付」が 1バイトに収まるような環境がそれほど一般的であるとは思えないのですが.
そして, そのあとの sprintf は何をしたいのでしょうか?
すみません。プログラムで1バイトで日付は私も判断出来ないと思います。
ですから"unsigned int"を定義していると思うのですが、如何でしょうか。
ありがとうございました。
No.1
- 回答日時:
【やり方】
(1)どういうデータなら日付なのかのイメージを明確にする
(2)あるデータが特定のデータに該当するかを判定する方法を考える
(3)(2)を日付に対してあてはめる
(4)(3)から具体的な処理方法を考える
(5)(4)をコードに落とす
一口に日付と言っても様々な表記方法があります。西暦何年とか平成何年とか年号から始まるものもあれば、「9/11」とだけのシンプルなものもあります。「いちがつついたち」と全部ひらがなとかもあり得ます。それらをすべて網羅して対応するのは現実的ではありません。
通常、特定用途で日付をチェックするなら、その用途に置いて現実的にあり得る表記方法に基づいてチェックを行うのが妥当です。それが複数ある場合もあるでしょうが、具体的な表記方法がイメージ出来れば、それをどうやってチェックしていけば良いのかということも分かってくると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- Excel(エクセル) Excelで2つの条件のうちどちらかにあてはまるときの数式を教えてください。 5 2023/01/19 16:58
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Visual Basic(VBA) VBA 行削除した連番 4 2023/06/27 16:00
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
システム日付とは?
-
VBA 日付、未来の日付はエラー...
-
3人のじゃんけんのプログラム
-
Eclipseの対応する括弧の強調表...
-
指定した日付が、その月の第何...
-
VisualBasic6.0のFormat関数で...
-
1本あたり○円と表示する時どの...
-
DataGridViewでyyyy/MM/dd
-
ZedGraphのグラフ作成時のX軸日付
-
VBAのオーバーフローについて質...
-
VBAのvalueとvalue2の違いに...
-
デザインが自由に変更でき「古...
-
C++で日付判定を行いたい!!
-
【Excel VBA】条件に合った行の...
-
VB 日付範囲チェック
-
【VBA】土日をスキップして日付...
-
JavaScriptで日付別のテキスト...
-
VBからCSVにデータを落とすとき...
-
エクセルVBAで機械の稼働時間を...
-
時間の計算の方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseの対応する括弧の強調表...
-
VisualBasic6.0のFormat関数で...
-
DataGridViewでyyyy/MM/dd
-
ユーザーフォームのラベルに日...
-
エクセルのVBAで日付を検索し転...
-
3人のじゃんけんのプログラム
-
今日より前の書き方 マクロ
-
1本あたり○円と表示する時どの...
-
テキストボックスにカレンダー...
-
システム日付とは?
-
「eclipseで作るカレンダー(ス...
-
VB6.0 のformat関数について
-
コンボボックスに日付を表示する
-
VBAで日付入力しているのですが
-
【Excel VBA】条件に合った行の...
-
【VBA】土日をスキップして日付...
-
VBA 日付、未来の日付はエラー...
-
excelのVBAについて、以下のコ...
-
テキストボックスに今日の日付...
-
DataGridViewの和暦表示について
おすすめ情報