ページ 11

書式変換フォーマットでしたっけな

Posted: 2007年6月09日(土) 09:35
by BAZZ
printfで
%d、%f、%sみたいなやつがありますよね??

これをつかいながら最近気づいたことがあります
%fにおいて、整数aの範囲をa > 0としたときに
%.afとしたら小数点以下a桁までの値がその直前の
小数点以下a + 1桁目が四捨五入されて表示されますよね??

そこで
%.adとした場合なんですが
これについてがよくわかりません。
printf("%.4d",123);
の実行結果は確か
0123
だったと思うんですが
これって
%04dだとおもいましたけど、これでおなじことができませんか??

%sにかんしては
char mozi[6] = "hello"

printf("%.4s", mozi);
の実行結果は
hell

なんです。

解説なんかを読むと
表示する最低桁数を設定するものみたいです。int型は初期値が1、doubleは6見たいなふうに
なってるそうです。

intは上の桁から数えてa桁分数えてそれ以下の桁数なら0を左に詰めて表示。
doubleは小数点以下からa桁分表示。
charは最初の文字からa文字目までを表示

ってことになるとおもうんですが、これでいいんでしょうか??

ひさしぶりに質問内容がまとまってると思いますけど(爆
よろしくおねがいしますm(__)m

Re:書式変換フォーマットでしたっけな

Posted: 2007年6月09日(土) 10:43
by toyo
いいんじゃないでしょうか

d, i, o, u, x, X 変換では、表示される最小の桁数を指定する。
a, A, e, E, f, F 変換では、小数点以下に表示される数字の桁数を指定する。
g と G 変換では、有効数字の最大桁数を指定する。
s と S 変換では、文字列から出力される最大文字数を指定する。

Re:書式変換フォーマットでしたっけな

Posted: 2007年6月09日(土) 15:07
by BAZZ
疑問が解決しました。

本当にありがとうございましたm(__)m

Re:書式変換フォーマットでしたっけな

Posted: 2007年6月09日(土) 15:15
by 管理人
http://www.google.co.jp/search?hl=ja&q= ... %83%89&lr=

この辺の検索で色々わかりますよ^^

Re:書式変換フォーマットでしたっけな

Posted: 2007年6月12日(火) 21:37
by BAZZ
うわww
すごい多いですねwww

なんか・・・まだまだって感じが激しくしてきます。
当たり前ですけど。

管理人さん、toyoさん
返信ありがとうございました!