カレンダープログラムを作っています。'expand repeating events'コードは、私に問題の終わりを与えていません。mktime()を使用して「純粋な」時間値を取得し、それに繰り返しデルタ(この場合は604800秒または7日)を追加することで、イベントを拡張しています。次に、localtime()を使用して、カレンダー構造体を元に戻します。
これは起こります:
元のイベント:9月10日
{tm_sec = 0, tm_min = 0, tm_hour = 16, tm_mday = 10, tm_mon = 9,
tm_year = 2012, tm_wday = 4, tm_yday = 283, tm_isdst = 0,
tm_gmtoff = -25200, tm_zone = 0x608ff0 "PDT"}
最初の繰り返し:9月17日
{tm_sec = 0, tm_min = 0, tm_hour = 17, tm_mday = 17, tm_mon = 9,
tm_year = 2012, tm_wday = 4, tm_yday = 290, tm_isdst = 1,
tm_gmtoff = -25200, tm_zone = 0x608ff0 "PDT"}
2回目の繰り返し:9月24日
{tm_sec = 0, tm_min = 0, tm_hour = 16, tm_mday = 24, tm_mon = 9,
tm_year = 2012, tm_wday = 4, tm_yday = 297, tm_isdst = 0,
tm_gmtoff = -25200, tm_zone = 0x608ff0 "PDT"}
3回目の繰り返し:9月31日?!
{tm_sec = 0, tm_min = 0, tm_hour = 16, tm_mday = 31, tm_mon = 9,
tm_year = 2012, tm_wday = 4, tm_yday = 304, tm_isdst = 0,
tm_gmtoff = -25200, tm_zone = 0x608ff0 "PDT"}
ここで何が起こっているのか誰かが知っていますか?自分で記入する必要がありlocaltime()
ますか?