質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

解決済

1回答

4455閲覧

C言語 変換指定の最小フィールド幅と精度の違い

退会済みユーザー

退会済みユーザー

総合スコア0

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2016/04/18 05:20

編集2016/04/18 06:23

c

1#include <stdio.h> 2int main(){ 3 /* int a = 1234; 4 printf("%%d : %d\n", a); 5 printf("%%9d : %9d\n", a); 6 printf("%%09d : %9d\n", a); 7 printf("%%09.d : %9d\n", a); 8 printf("%%0.9d : %9d\n", a); 9 printf("%%09.9d : %9d\n", a); 10 printf("%%.9d : %.9d\n", a); 11 printf("%%-.9d : %.9d\n", a); 12 printf("%%-9d : %.9d\n", a); 13 printf("%%-d : %.9d\n", a); 14 printf("%%0-d : %.9d\n", a); 15 return 0;*/ 16} 17

###結果
%d : 1234
%9d : 1234
%09d : 1234
%09.d : 1234
%0.9d : 1234
%09.9d : 1234
%.9d : 000001234
%-.9d : 000001234
%-9d : 000001234
%-d : 000001234
%0-d : 000001234


  1. 本には最小フィールド幅は最低限の表示文字数の指定と書いてあり、精度は表示する最小の桁数の指定。と書いてありましたが、違いはなんですか?

  2. 上の例の場合、少なくとも9桁は表示するが、もし表示する整数(a)が9桁に満たない場合は、最小フィールドで表示文字数を指定したのならば空白で、精度で表示桁数を指定したのならば0で埋めるという認識でいいのですか?

これらの違いは0で埋めるか空白で埋めるかの差ですか?

  1. 説明にある、最低限の表示文字数と最初の桁数の言葉の使い分けが気になります。どういう意味ですか?

  2. -は最小フィールド幅の選択肢の一つなのですか?-nで一つの塊になるのか、それとも**-n**に分かれているのでしょうか?

  3. 最小フィールド幅と精度の指定を両立させることは不可能なのですか?

他にも知りたいことがたくさんありますが、どのように聞いたらいいのか分からないので、あなたが知っていることをできる限り教えてください。


保留

後で編集します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

回答をする前に、このソース正しいですか?

C

1 printf("%%09d : %9d\n", a); 2 3```は 4```C 5 printf("%%09d : %09d\n", a); 6 7```ではないですか? 8次ステップ以降も同様です。 9書式が同じになってます。 10修正して実行結果を見直してみるとよいですよ。

投稿2016/04/18 05:58

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/04/18 06:22

なんかおかしいなぁと思ったらそういうことだったのですね。 気づきませんでした。 ありがとうございます。
退会済みユーザー

退会済みユーザー

2016/04/19 04:47

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問