1 <?xml version="1.0" encoding="UTF-8"?>
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) XXXX-2008 - INRIA
6 * Copyright (C) 2012 - 2016 - Scilab Enterprises
8 * This file is hereby licensed under the terms of the GNU GPL v2.0,
9 * pursuant to article 5.3.4 of the CeCILL v.2.1.
10 * This file was originally licensed under the terms of the CeCILL v2.1,
11 * and continues to be available under such terms.
12 * For more information, see the COPYING file which you should have received
13 * along with this program.
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="printf_conversion" xml:lang="ja">
18 <refname>printf_conversion</refname>
19 <refpurpose>mprintf, msprintf, mfprintf 変換仕様</refpurpose>
24 <literal>mprintf</literal> ,
25 <literal>msprintf</literal> , <literal>mfprintf</literal>における各変換仕様.
26 <literal>format</literal> パラメータは以下のような構文を有します:
30 <para>A % (パーセント) 符号.</para>
34 0個以上の <literal>options</literal>で,
36 以下のリストに<literal>option</literal>文字とその意味を示します:
40 <para>- : 左揃え, フィールド内では, 変換の結果.</para>
43 <para>+ : (+または -)を指定する符号変換の結果を開始.</para>
47 符号変換後の最初の文字が符号ではない場合に結果の
49 (空白) および +オプションが共に指定された場合,
55 <literal>c</literal>, <literal>d</literal>, <literal>i</literal>,
56 <literal>s</literal>, および <literal>u</literal> 変換の場合,
57 <literal>#</literal>オプションの効果はありません.
58 <literal>o</literal> 変換の場合, <literal>#</literal> は
59 結果の最初の桁を強制的に0 (ゼロ)にし,精度を増加させます.
60 <literal>x</literal> および <literal>X</literal>変換の場合,
61 ゼロでない結果の前に0xまたは0Xが付加されます.
62 <literal>e, E, f, g,</literal> および <literal>G</literal>変換の場合,
63 小数点以下の値がない場合でも結果には常に小数点が含まれます.
64 <literal>g</literal> および
65 <literal>G</literal> 変換の場合,
72 <literal>i</literal>, <literal>o</literal>, <literal>u</literal>,
73 <literal>x</literal>, <literal>X</literal>, <literal>e</literal>,
74 <literal>E</literal>, <literal>f</literal>, <literal>g</literal>,
75 および <literal>G</literal>変換において
77 前に0をつけることによりフィールド幅内を埋めます:
79 <literal>0</literal> および <literal>\-</literal>(ダッシュ)が共に指定された場合,
80 <literal>0</literal>フラグは無視されます.
81 <literal>d</literal>, <literal>i</literal>,
82 <literal>o</literal> <literal>u</literal>, <literal>x</literal>,
83 および <literal>X</literal> 変換の場合, 精度が指定されると,
84 <literal>0</literal> フラグも無視されます.
93 変換された値の文字がこのフィールド幅よりも少ない場合,
94 フィールドはフィールド幅の指定長まで左側にパディングされます.
99 オプションの精度. 精度は <literal>.</literal> (ドット)の後に
102 このパラメータは 0 (ゼロ)と扱われます.
108 <literal>d</literal>,
109 <literal>u</literal>, <literal>o</literal>, <literal>x</literal>, または
110 <literal>X</literal>変換に関する最小表示桁数
115 <literal>e</literal>, <literal>E</literal>, および <literal>f</literal>
121 <literal>g</literal> および<literal>G</literal>変換における
127 <literal>s</literal>変換において文字列から出力される
132 <para>適用される変換の種類を示す文字:</para>
135 <para>% : 変換しません. %を表示.</para>
139 d,i: 整数 <literal>value</literal> を受け取り,
142 変換される値がより少ない桁数で表せる場合,
144 デフォルトの精度は1です.値0を精度0で変換した結果は,
146 前に付加する文字をゼロとしてフィールド幅を指定すると,
147 フィールド幅までの値では前にゼロを付加するパディングが
153 u : 整数 <literal>value</literal> を受け取り,
156 変換される値がより少ない桁数で表せる場合,
158 デフォルトの精度は1です.値0を精度0で変換した結果は,
160 前に付加する文字をゼロとしてフィールド幅を指定すると,
161 フィールド幅までの値では前にゼロを付加するパディングが
167 o : 整数 <literal>value</literal> を受け取り,
170 変換される値がより少ない桁数で表せる場合,
172 デフォルトの精度は1です.値0を精度0で変換した結果は,
174 前に付加する文字をゼロとしてフィールド幅を指定すると,
175 フィールド幅までの値では前にゼロを付加するパディングが
176 行われます. フィールド幅に8進数を使用することはできません.
181 x, X : 整数 <literal>value</literal> を受け取り,
182 符号なし16進数表記に変換します.<literal>x</literal>変換では,
183 文字``abcdef''が使用されます;<literal>X</literal>変換では,
185 精度はは表示される最小の桁数を指定します.
186 変換される値がより少ない桁数で表せる場合,
188 デフォルトの精度は1です.値0を精度0で変換した結果は,
190 前に付加する文字をゼロとしてフィールド幅を指定すると,
191 フィールド幅までの値では前にゼロを付加するパディングが
197 f : float または double の<literal>value</literal> を受け取り,
198 %[\-]<literal>ddd.ddd</literal>形式の10進数表記に変換します.
199 小数点以下の桁数は,精度指定子に等しくなります.
203 <para>精度が指定されない場合, 6桁が出力されます.</para>
206 <para>精度がゼロの場合, 小数点は表示されず,
207 システムは<literal>value</literal>に最も近い整数に丸めた数を
212 <para>小数点が出力される場合,最低でも1桁がその前に出力されます.</para>
218 e, E : 実数を受け取り,指数形式%[\-]<literal>d.ddde</literal>+/\-<literal>dd</literal>
220 小数点の前に1桁があり,小数点の後の桁数は精度指定子に等しくなります.
224 <para>精度が指定されない場合, 6桁が出力されます.</para>
227 <para>精度がゼロの場合, 小数点は表示されません.
232 <literal>E</literal> 変換文字の場合,
233 指数の前の e の代わりに E を付けた数値を出力します.
235 値が 0 の場合, 指数は 0 となります.
241 <para>g, G : 実数を受け取り,有効桁数を指定する精度を付けた
242 <literal>e</literal>, <literal>E</literal>, または
243 <literal>f</literal>変換文字の形式に変換します.
245 小数点は数字が続く場合にのみ表示されます.
246 使用される形式は変換される値に依存します.
247 変換結果の指数が-4よりも小さい場合,または,
249 <literal>e</literal> (使用されるフラグが<literal>G</literal>の場合は
250 <literal>E</literal>)形式が使用されます.
254 <para>c : 整数値を受け取り,文字に変換します.</para>
258 s : 文字列 <literal>value</literal> を受け取り,
259 文字列から末尾または精度に示された文字数に達するまで,
260 文字に変換します.精度が指定されない場合,末尾までの全ての文字が
268 桁文字の代わりに<literal>*</literal> (アスタリスク)で
270 この場合,整数 <literal>value</literal>パラメータは
272 出力に変換される<literal>value</literal> パラメータは
275 フィールド幅または精度を指定するパラメータは変換される値よりも
278 <para>変換の結果がフィールド幅よりも広い場合,
279 このフィールドは変換結果を含められる幅まで拡張されます.
282 +記号の意味は<literal>+</literal>または(空白)整形オプションの
285 <para>指数形式 %e の表示はプレットフォームに依存し,
288 <informaltable border="1">
291 <td>例: msprintf("%e",1.23e4)</td>
295 <td>1.23000e+004</td>
298 <td>Linux/Mac OS</td>
305 <programlisting role="example"><![CDATA[
306 mprintf('a string: %s\n', 'Scilab');
307 mprintf('an integer: %d\n', 10);
308 mprintf('an integer: %4d\n', 10);
309 mprintf('a left justified integer: %-4d\n', 10);
310 mprintf('an integer converted to float: %#fd\n',10);
311 mprintf('an integer with a sign: %+4d\n', 10);
312 mprintf('an integer with a sign: %+4d\n', -10);
313 mprintf('an integer padded with zeros: %04d\n', 10);
314 mprintf('an unsigned integer: %u\n', 10);
315 mprintf('an unsigned integer: %4u\n', -10);
316 mprintf('an integer converted to hexadecimal: %x\n', 10);
317 mprintf('a float: %d\n', %pi);
318 mprintf('a float: %3.2d\n', %pi);
319 mprintf('a float (exponential form): %3.2e\n', %pi);
320 mprintf('a float (exponential form): %3.2g\n', %pi);
321 mprintf('a character: %c\n', 'a');
322 mprintf('a character: %c\n', 'aaa');
325 <refsection role="see also">
327 <simplelist type="inline">
329 <link linkend="mprintf">mprintf</link>
332 <link linkend="mfprintf">mfprintf</link>
335 <link linkend="msprintf">msprintf</link>