またまた、localtimeを使った例文が本に載っていたのでそれをVS2013に入れてみると、「localtime_sを使え」と怒られたというのが事の発端。前に、これとこれな感じで、tm構造体がらみで敗退したのとほぼ同じ状況。
まずは、本に載っていたコードをlocaltime_sに変えて、かつ、引数の数とか、errno_t....とかに注意して書き直してコンパイルしてみると、
error C4700 「初期化されていないローカル変数が使用されます。」 と、前回敗退したのと同じ状況が再現された。ここで悩むこと3~4日。まあ、五月連休だったので、しっかり悩みまくって試行錯誤したわけだが。(^^
----
なんとかいろいろいじりまくって、ようやくコンパイラだけは通した血肉の策?がこちら。
つまり、原因はわからないが、なぜか、
ポインタを使うような構文だとダメで、参照を使うとなぜか通る。という。
もうここで、localtime_s問題だけでなく、
ポインタとか参照とかも理解が不完全なことが既に露呈。
---
で、出力を見ると、4/4/114の文字がすご~くイヤだ。w
なので、またまた試行錯誤して、もしかしてtime(NULL)というのが怪しいのでは??と邪推して、time(&t)にしてみたのがお次。
ご覧のとおり、結果は、別にNULLで良かったじゃんということに。
---
なのでお次は、この気持ち悪い4/4/114の中身を探るために、ステップ実行でデバッグに入ってみる。このように、time とか t の中身を見てみると、1399181075だ。
この1399181075という数字を電卓で概算してみると実は真っ当な数値だった。
なのでさらに、これが p に行ってどうなるかを見てみることにした。
お!、4 4 114が現れたな。
ということで、ちょっと冷静に、そもそもtm構造体の構造はどうなっているかを調べてみると、これだ。
というわけで~wwww 実はプログラムのほうがマトモで、本に載っていたソースコードのほうが、こういう気持ち悪いのを放置している怠慢?なコードだったみたいな。
******
ここまでわかれば原因は特定できたので、あとは対策するだけだ。
軽くググって、strftimeを使えばよいことを発見。
で、なんとかここまで辿り着いた。
赤矢印にご注目。このように、いたってマトモに動作していたことが発見された。
何日の何時何分何秒に何をやっていたか、プライバシーばれまくりwだけど~。
とりあえず、ようやく、いろいろな問題の複合&いろいろうやむやでわからないことだらけなのが露呈wしたものの、結論が出たのでヨシとしようか~。
まずは、本に載っていたコードをlocaltime_sに変えて、かつ、引数の数とか、errno_t....とかに注意して書き直してコンパイルしてみると、
error C4700 「初期化されていないローカル変数が使用されます。」 と、前回敗退したのと同じ状況が再現された。ここで悩むこと3~4日。まあ、五月連休だったので、しっかり悩みまくって試行錯誤したわけだが。(^^
----
なんとかいろいろいじりまくって、ようやくコンパイラだけは通した血肉の策?がこちら。
つまり、原因はわからないが、なぜか、
ポインタを使うような構文だとダメで、参照を使うとなぜか通る。という。
もうここで、localtime_s問題だけでなく、
ポインタとか参照とかも理解が不完全なことが既に露呈。
---
で、出力を見ると、4/4/114の文字がすご~くイヤだ。w
なので、またまた試行錯誤して、もしかしてtime(NULL)というのが怪しいのでは??と邪推して、time(&t)にしてみたのがお次。
ご覧のとおり、結果は、別にNULLで良かったじゃんということに。
---
なのでお次は、この気持ち悪い4/4/114の中身を探るために、ステップ実行でデバッグに入ってみる。このように、time とか t の中身を見てみると、1399181075だ。
この1399181075という数字を電卓で概算してみると実は真っ当な数値だった。
なのでさらに、これが p に行ってどうなるかを見てみることにした。
お!、4 4 114が現れたな。
ということで、ちょっと冷静に、そもそもtm構造体の構造はどうなっているかを調べてみると、これだ。
というわけで~wwww 実はプログラムのほうがマトモで、本に載っていたソースコードのほうが、こういう気持ち悪いのを放置している怠慢?なコードだったみたいな。
******
ここまでわかれば原因は特定できたので、あとは対策するだけだ。
軽くググって、strftimeを使えばよいことを発見。
で、なんとかここまで辿り着いた。
赤矢印にご注目。このように、いたってマトモに動作していたことが発見された。
何日の何時何分何秒に何をやっていたか、プライバシーばれまくりwだけど~。
とりあえず、ようやく、いろいろな問題の複合&いろいろうやむやでわからないことだらけなのが露呈wしたものの、結論が出たのでヨシとしようか~。