scanf/printf_conversion documentation corrected.
[scilab.git] / scilab / modules / output_stream / help / ja_JP / printf_conversion.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) XXXX-2008 - INRIA
5  *
6  * This file must be used under the terms of the CeCILL.
7  * This source file is licensed as described in the file COPYING, which
8  * you should have received as part of this distribution.  The terms
9  * are also available at
10  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
11  *
12  -->
13 <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">
14     <refnamediv>
15         <refname>printf_conversion</refname>
16         <refpurpose>mprintf, msprintf, mfprintf 変換仕様</refpurpose>
17     </refnamediv>
18     <refsection>
19         <title>説明</title>
20         <para>
21             <literal>mprintf</literal> ,
22             <literal>msprintf</literal> , <literal>mfprintf</literal>における各変換仕様.
23             <literal>format</literal> パラメータは以下のような構文を有します:
24         </para>
25         <itemizedlist>
26             <listitem>
27                 <para>A % (パーセント) 符号.</para>
28             </listitem>
29             <listitem>
30                 <para>
31                     0個以上の <literal>options</literal>で,
32                     変換仕様の意味を修正します.
33                     以下のリストに<literal>option</literal>文字とその意味を示します:
34                 </para>
35                 <itemizedlist>
36                     <listitem>
37                         <para>- : 左揃え, フィールド内では, 変換の結果.</para>
38                     </listitem>
39                     <listitem>
40                         <para>+ : (+または -)を指定する符号変換の結果を開始.</para>
41                     </listitem>
42                     <listitem>
43                         <para>'空白' :
44                             符号変換後の最初の文字が符号ではない場合に結果の
45                             前に空白文字を付加します.
46                             (空白) および +オプションが共に指定された場合,
47                             (空白) オプションは無視されます.
48                         </para>
49                     </listitem>
50                     <listitem>
51                         <para># : 別の形式に値を変換.
52                             <literal>c</literal>, <literal>d</literal>, <literal>i</literal>,
53                             <literal>s</literal>, および <literal>u</literal> 変換の場合,
54                             <literal>#</literal>オプションの効果はありません.
55                             <literal>o</literal> 変換の場合, <literal>#</literal> は
56                             結果の最初の桁を強制的に0 (ゼロ)にし,精度を増加させます.
57                             <literal>x</literal> および <literal>X</literal>変換の場合,
58                             ゼロでない結果の前に0xまたは0Xが付加されます.
59                             <literal>e, E, f, g,</literal> および <literal>G</literal>変換の場合,
60                             小数点以下の値がない場合でも結果には常に小数点が含まれます.
61                             <literal>g</literal> および
62                             <literal>G</literal> 変換の場合,
63                             末尾の0は結果から除かれません.
64                         </para>
65                     </listitem>
66                     <listitem>
67                         <para>0 :
68                             <literal>d</literal>,
69                             <literal>i</literal>, <literal>o</literal>, <literal>u</literal>,
70                             <literal>x</literal>, <literal>X</literal>, <literal>e</literal>,
71                             <literal>E</literal>, <literal>f</literal>, <literal>g</literal>,
72                             および <literal>G</literal>変換において
73                             (符号または基底の指示子の後に)
74                             前に0をつけることによりフィールド幅内を埋めます:
75                             空白によるパディングは行われません
76                             <literal>0</literal> および <literal>\-</literal>(ダッシュ)が共に指定された場合,
77                             <literal>0</literal>フラグは無視されます.
78                             <literal>d</literal>, <literal>i</literal>,
79                             <literal>o</literal> <literal>u</literal>, <literal>x</literal>,
80                             および <literal>X</literal> 変換の場合, 精度が指定されると,
81                             <literal>0</literal> フラグも無視されます.
82                         </para>
83                     </listitem>
84                 </itemizedlist>
85             </listitem>
86         </itemizedlist>
87         <para>
88             オプションの10進数文字列は
89             最小フィールド幅を指定します.
90             変換された値の文字がこのフィールド幅よりも少ない場合,
91             フィールドはフィールド幅の指定長まで左側にパディングされます.
92             左寄せオプションが指定された場合,
93             フィールドは右側にパディングされます.
94         </para>
95         <para>
96             オプションの精度. 精度は <literal>.</literal> (ドット)の後に
97             10進数文字列が続きます.
98             精度が指定されない場合,
99             このパラメータは 0 (ゼロ)と扱われます.
100             精度指定子:
101         </para>
102         <itemizedlist>
103             <listitem>
104                 <para>
105                     <literal>d</literal>,
106                     <literal>u</literal>, <literal>o</literal>, <literal>x</literal>, または
107                     <literal>X</literal>変換に関する最小表示桁数
108                 </para>
109             </listitem>
110             <listitem>
111                 <para>
112                     <literal>e</literal>, <literal>E</literal>, および <literal>f</literal>
113                     における小数点の後に表示する桁数
114                 </para>
115             </listitem>
116             <listitem>
117                 <para>
118                     <literal>g</literal> および<literal>G</literal>変換における
119                     有効桁の最大値
120                 </para>
121             </listitem>
122             <listitem>
123                 <para>
124                     <literal>s</literal>変換において文字列から出力される
125                     最大文字数
126                 </para>
127             </listitem>
128             <listitem>
129                 <para>適用される変換の種類を示す文字:</para>
130                 <itemizedlist>
131                     <listitem>
132                         <para>% : 変換しません.  %を表示.</para>
133                     </listitem>
134                     <listitem>
135                         <para>
136                             d,i: 整数 <literal>value</literal> を受け取り,
137                             符号付き10進数表記に変換します.
138                             精度は表示される最小の桁数を指定します.
139                             変換される値がより少ない桁数で表せる場合,
140                             前にゼロを付加して拡張されます.
141                             デフォルトの精度は1です.値0を精度0で変換した結果は,
142                             ヌル文字列となります.
143                             前に付加する文字をゼロとしてフィールド幅を指定すると,
144                             フィールド幅までの値では前にゼロを付加するパディングが
145                             行われます.
146                         </para>
147                     </listitem>
148                     <listitem>
149                         <para>
150                             u : 整数 <literal>value</literal> を受け取り,
151                             符号なし10進数表記に変換します.
152                             精度は表示される最小の桁数を指定します.
153                             変換される値がより少ない桁数で表せる場合,
154                             前にゼロを付加して拡張されます.
155                             デフォルトの精度は1です.値0を精度0で変換した結果は,
156                             ヌル文字列となります.
157                             前に付加する文字をゼロとしてフィールド幅を指定すると,
158                             フィールド幅までの値では前にゼロを付加するパディングが
159                             行われます.
160                         </para>
161                     </listitem>
162                     <listitem>
163                         <para>
164                             o : 整数 <literal>value</literal> を受け取り,
165                             符号なし8進数表記に変換します.
166                             精度は表示される最小の桁数を指定します.
167                             変換される値がより少ない桁数で表せる場合,
168                             前にゼロを付加して拡張されます.
169                             デフォルトの精度は1です.値0を精度0で変換した結果は,
170                             ヌル文字列となります.
171                             前に付加する文字をゼロとしてフィールド幅を指定すると,
172                             フィールド幅までの値では前にゼロを付加するパディングが
173                             行われます. フィールド幅に8進数を使用することはできません.
174                         </para>
175                     </listitem>
176                     <listitem>
177                         <para>
178                             x, X : 整数 <literal>value</literal> を受け取り,
179                             符号なし16進数表記に変換します.<literal>x</literal>変換では,
180                             文字``abcdef''が使用されます;<literal>X</literal>変換では,
181                             文字``ABCDEF''が使用されます.
182                             精度はは表示される最小の桁数を指定します.
183                             変換される値がより少ない桁数で表せる場合,
184                             前にゼロを付加して拡張されます.
185                             デフォルトの精度は1です.値0を精度0で変換した結果は,
186                             ヌル文字列となります.
187                             前に付加する文字をゼロとしてフィールド幅を指定すると,
188                             フィールド幅までの値では前にゼロを付加するパディングが
189                             行われます.
190                         </para>
191                     </listitem>
192                     <listitem>
193                         <para>
194                             f : float または double の<literal>value</literal> を受け取り,
195                             %[\-]<literal>ddd.ddd</literal>形式の10進数表記に変換します.
196                             小数点以下の桁数は,精度指定子に等しくなります.
197                         </para>
198                         <itemizedlist>
199                             <listitem>
200                                 <para>精度が指定されない場合, 6桁が出力されます.</para>
201                             </listitem>
202                             <listitem>
203                                 <para>精度がゼロの場合, 小数点は表示されず,
204                                     システムは<literal>value</literal>に最も近い整数に丸めた数を
205                                     出力します.
206                                 </para>
207                             </listitem>
208                             <listitem>
209                                 <para>小数点が出力される場合,最低でも1桁がその前に出力されます.</para>
210                             </listitem>
211                         </itemizedlist>
212                     </listitem>
213                     <listitem>
214                         <para>
215                             e, E : 実数を受け取り,指数形式%[\-]<literal>d.ddde</literal>+/\-<literal>dd</literal>
216                             に変換します.
217                             小数点の前に1桁があり,小数点の後の桁数は精度指定子に等しくなります.
218                         </para>
219                         <itemizedlist>
220                             <listitem>
221                                 <para>精度が指定されない場合, 6桁が出力されます.</para>
222                             </listitem>
223                             <listitem>
224                                 <para>精度がゼロの場合, 小数点は表示されません.
225                                 </para>
226                             </listitem>
227                             <listitem>
228                                 <para>
229                                     <literal>E</literal> 変換文字の場合,
230                                     指数の前の e の代わりに E を付けた数値を出力します.
231                                     指数には常に2桁以上が含まれます.
232                                     値が 0 の場合, 指数は 0 となります.
233                                 </para>
234                             </listitem>
235                         </itemizedlist>
236                     </listitem>
237                     <listitem>
238                         <para>g, G : 実数を受け取り,有効桁数を指定する精度を付けた
239                             <literal>e</literal>, <literal>E</literal>, または
240                             <literal>f</literal>変換文字の形式に変換します.
241                             末尾のゼロは結果から削除されます.
242                             小数点は数字が続く場合にのみ表示されます.
243                             使用される形式は変換される値に依存します.
244                             
245                             
246                             変換結果の指数が-4よりも小さい場合,または,
247                             精度より大きいか等しい場合に,
248                             <literal>e</literal> (使用されるフラグが<literal>G</literal>の場合は
249                             <literal>E</literal>)形式が使用されます.
250                         </para>
251                     </listitem>
252                     <listitem>
253                         <para>c : 整数値を受け取り,文字に変換します.</para>
254                     </listitem>
255                     <listitem>
256                         <para>
257                             s : 文字列 <literal>value</literal> を受け取り,
258                             文字列から末尾または精度に示された文字数に達するまで,
259                             文字に変換します.精度が指定されない場合,末尾までの全ての文字が
260                             表示されます.
261                         </para>
262                     </listitem>
263                 </itemizedlist>
264             </listitem>
265         </itemizedlist>
266         <para>フィールド幅または精度は,
267             桁文字の代わりに<literal>*</literal> (アスタリスク)で
268             示すことができます.
269             この場合,整数 <literal>value</literal>パラメータは
270             フィールド幅または精度を指定します.
271             出力に変換される<literal>value</literal> パラメータは
272             変換文字が達するまで取得されません.
273             このため,
274             フィールド幅または精度を指定するパラメータは変換される値よりも
275             前に現れる必要があります.
276         </para>
277         <para>変換の結果がフィールド幅よりも広い場合,
278             このフィールドは変換結果を含められる幅まで拡張されます.
279         </para>
280         <para>
281             +記号の意味は<literal>+</literal>または(空白)整形オプションの
282             どちらが指定されたかに依存します.
283         </para>
284         <para>指数形式 %e の表示はプレットフォームに依存し,
285             指数の桁数は異なります.
286         </para>
287         <informaltable border="1">
288             <tr>
289                 <td>プラットフォーム</td>
290                 <td>例: msprintf("%e",1.23e4)</td>
291             </tr>
292             <tr>
293                 <td>Windows</td>
294                 <td>1.23000e+004</td>
295             </tr>
296             <tr>
297                 <td>Linux/Mac OS</td>
298                 <td>1.23000e+04</td>
299             </tr>
300         </informaltable>
301     </refsection>
302     <refsection>
303         <title>例</title>
304         <programlisting role="example"><![CDATA[
305 mprintf('a string: %s\n', 'Scilab');
306 mprintf('an integer: %d\n', 10);
307 mprintf('an integer: %4d\n', 10);
308 mprintf('a left justified integer: %-4d\n', 10);
309 mprintf('an integer converted to float: %#fd\n',10);
310 mprintf('an integer with a sign: %+4d\n', 10);
311 mprintf('an integer with a sign: %+4d\n', -10);
312 mprintf('an integer padded with zeros: %04d\n', 10);
313 mprintf('an unsigned integer: %u\n', 10);
314 mprintf('an unsigned integer: %4u\n', -10);
315 mprintf('an integer converted to hexadecimal: %x\n', 10);
316 mprintf('a float: %d\n', %pi);
317 mprintf('a float: %3.2d\n', %pi);
318 mprintf('a float (exponential form): %3.2e\n', %pi);
319 mprintf('a float (exponential form): %3.2g\n', %pi);
320 mprintf('a character: %c\n', 'a');
321 mprintf('a character: %c\n', 'aaa');
322  ]]></programlisting>
323     </refsection>
324     <refsection role="see also">
325         <title>参照</title>
326         <simplelist type="inline">
327             <member>
328                 <link linkend="mprintf">mprintf</link>
329             </member>
330             <member>
331                 <link linkend="mfprintf">mfprintf</link>
332             </member>
333             <member>
334                 <link linkend="msprintf">msprintf</link>
335             </member>
336         </simplelist>
337     </refsection>
338 </refentry>