- ベストアンサー
printfの動作に関する質問
コンパイラ bcc OS WindowsXP HomeEdition 開発言語 C 変数tempを unsigned long temp; と、宣言して、 printf("%15ld",temp); で値を表示していくと、unsignedで宣言しているのに、マイナスの値が出現します。 tempは、unsigned longの定義域ぎりぎりまで使います。 多分、2の補数としてマイナスを表現している関係かと思いますが、この現象を回避する方法はないのでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ldではなくluだと思います。 (uは符号無し十進数の記号)
お礼
回答ありがとうございます。 なにやら、大量に同じ意味の返信が来て困っていますが、一番早く正確な情報を下さった、この方にポイントを振って終了したいと思います。 参考としていたものに、整数型はdとしか書いてなかったので、今回uというものを教えていただき非常に参考になったと判断します。 殆どのサイトでもdとしか書いていないもので、dしかないのかと思っていましたが、まだまだあるものですね。