次のコードがあります。
char buf[255];
int ID = 0;
double val = 1.234;
sprintf(buf, "%d@%.3lf", ID, val);
printf("%s", buf);
printf()
値を正しく出力しID
ますが、val
値はゴミです。この問題の原因を知っていますか? Win7 32 ビットで MSVC 9 を使用しています。さらに奇妙なことに、上記のコードは 64 ビット マシンで正しく動作します。
助けてくれてありがとう。