C/C++ コード用の Windows 64 ビット プラットフォームで Code::Blocks 12.11 を使用しています。最近、このプログラムの予想外の結果に遭遇しました。
#include <stdio.h>
int main()
{
long double number;
number = 1.1234567;
printf("%llf\n",number);
return 0;
}
出力 1.1234567 を出力する必要がありますが、-0.000000 が返されます。long double を使用すると、常に間違った値が返されることがわかりました。このコードは ideone http://ideone.com/Opu8cyで正常に動作します。これを修正する方法があれば教えてください。