• ベストアンサー

入出力について

プログラミングの初心者ですが、入出力について少し理解できないことがあります。ある参考書で long値の使い方について long lg; とし、 出力する時 printf("%ld\n",lg); とせよ と書いてあったのですが この % の後にある l は一体どうゆう役割を果たしているのでしょうか? また入力について double値の使い方で double db; とし、 scanf("%lf", &db); とせよ と書いてあったのですが、この場合の % の後の l は一体どうゆう役割を果たしているのでしょうか? 説明に不足があればまた足しますのでよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

まっとうな資料ならきっちり書いてあるはずですが, printf, scanf 系の書式において, その l は対応する引数が long または double であることを示します. ちなみに printf 系の l は C99 で使えるようになったので, それ以前の規格の処理系だとだめかもしれない.

ganfuji142
質問者

お礼

そういうことだったのですか。 わかりました。ありがとうございました。

その他の回答 (1)

回答No.2

No1の方の回答で出尽くされましたが、 もし%l~の効果を試してみたいなら、 long long llg = とても大きい数(5000000000とか) とし、 printf("%d",llg);とprintf("%ld",llg); などで比較してみてください。

関連するQ&A