![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
ずっと昔やずっと未来の年を扱うのでなければ、
int date = 20080801;
struct tm t = { 0 };
t.tm_year = -1900 + date / 10000;
t.tm_mon = -1 + date / 100 % 100;
t.tm_mday = date % 100 - 1;
mktime(&t);
とすれば、tに正しい年月日が格納されます。
No.2
- 回答日時:
具体的なやり方は失念しましたが、
通算日に変換して計算してから元に戻すのが一般的です。
この方法以外でやると月跨り、年跨り、閏年などの面倒な処理を手書きする必要が出てくるので実用的ではありません。
No.1
- 回答日時:
ある日 int date;
年 int year ;
月 int month;
日 int day ;
とすると
year = date / 10000 ;
month = (date % 10000) / 100 ;
day = date % 100 ;
で年月日を分解できます。
一日分差し引いた日付で問題なのはdayが1の場合だけです。
閏年の判定は
4の倍数でしかも100の倍数でない年は閏年。
ただし、400の倍数の年は閏年。
これで年月日が求まったら
date = year*1000+month*100+day ;
で元の書式に戻せばよい。
この回答へのお礼
お礼日時:2008/08/27 21:33
お礼が遅くなってしまいすみません。
なんとか、年・月・日に分けて、一日差し引くところまでは出来たのですが、
それをどうやって、元の書式に戻そうか悩んでいたので、とても助かりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 政治 自民党政権の日本が人権問題で世界に恥を晒しているのは何故ですか? 8 2022/11/04 16:57
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- 英語 英語の上達方法 4 2023/07/29 11:36
- Excel(エクセル) 下記エクセルの式がなぜこうなるのか理由が知りたいです。 6 2022/08/20 00:43
- 年末調整 源泉徴収票について 4 2022/10/26 10:37
- 留学・ワーキングホリデー リスニング力、はつきますか?6カ月語学学校行き数年間お金を稼いでまた、6カ月間語学留学に行くのは? 1 2023/02/11 15:49
- 健康保険 傷病手当金の申請について 3 2022/07/09 09:14
- 哲学 日本語は論理表現にふさわしくないか の問題です 4 2022/06/25 03:56
- 就職 日本語講師を諦めるべきか 2 2022/09/13 00:23
- 日本語 「~人」と「~名」の使い分け 2 2022/06/02 11:59
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Cronでdate()を実行して一部の...
-
「取得先」という表現について
-
積立投資してます。現在平均取...
-
VBAでPDFのアクティブページ番...
-
Yahoo! JAPAN IDを新規取得でき...
-
Dosブロンプトでtabを出力したい
-
各クライアントマシンのログイ...
-
EXCEL VBAでのCSV出力について
-
PHP正規表現の難題・preg_repla...
-
DTOとEntityの差は何ですか。
-
IEを使わないでhtmlテキストを...
-
逆順表示したい?
-
URLエンコードされなかったパラ...
-
syntax error, unexpected 'ech...
-
phpでcookieがうまく保存されない
-
バッチファイルでpingの結果を...
-
VB.NETでボリュームを取得・設...
-
ps3で久しぶりにCDの音楽情報取...
-
PHPのセッション有効期限について
-
Windows NT4.0 と 2000 のCP...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
開始と終了を指定して、その間...
-
ファイル名に日付の挿入
-
昨日の日付を取得するVBscript
-
PHP 指定した期間だけ表示した...
-
Accessで、DAOでAddnew
-
C言語を使って、ある特定の日の...
-
codeigniterの時間設定
-
日付計算について
-
昨日の日付名でファイルを作成...
-
現在時刻をyyyymmddhhmmss形式...
-
substrの使い方について教えて...
-
差分の月数を算出する方法
-
1ヶ月後の日付を出力したい
-
経過期間計算がうまくいかない
-
C言語でシステム日付との差を...
-
今日の日付から1週間のリスト
-
アップロードしたファイル名に...
-
strtotime 日付の変換
-
PHPでmysqlを使ってます。日時...
-
6ヶ月前の日付を取得するにはど...
おすすめ情報