<< print Output functions Xcos >>

Scilab Help >> Output functions > printf_conversion

printf_conversion

mprintf, msprintf, mfprintf 変換仕様

説明

mprintf , msprintf , mfprintfにおける各変換仕様. format パラメータは以下のような構文を有します:

オプションの10進数文字列は 最小フィールド幅を指定します. 変換された値の文字がこのフィールド幅よりも少ない場合, フィールドはフィールド幅の指定長まで左側にパディングされます. 左寄せオプションが指定された場合, フィールドは右側にパディングされます.

オプションの精度. 精度は . (ドット)の後に 10進数文字列が続きます. 精度が指定されない場合, このパラメータは 0 (ゼロ)と扱われます. 精度指定子:

フィールド幅または精度は, 桁文字の代わりに* (アスタリスク)で 示すことができます. この場合,整数 valueパラメータは フィールド幅または精度を指定します. 出力に変換されるvalue パラメータは 変換文字が達するまで取得されません. このため, フィールド幅または精度を指定するパラメータは変換される値よりも 前に現れる必要があります.

変換の結果がフィールド幅よりも広い場合, このフィールドは変換結果を含められる幅まで拡張されます.

+記号の意味は+または(空白)整形オプションの どちらが指定されたかに依存します.

指数形式 %e の表示はプレットフォームに依存し, 指数の桁数は異なります.
プラットフォーム 例: msprintf("%e",1.23e4)
Windows 1.23000e+004
Linux/Mac OS 1.23000e+04

Special escaped sequenced are supported in C-format strings:
\n : Go to Next line (line feed)
\r : Return: go to the head of current line (for overprinting)
\t : horizontal Tab
\\ : print a backslash \

mprintf('a string: %s\n', 'Scilab');
mprintf('an integer: %d\n', 10);
mprintf('an integer: %4d\n', 10);
mprintf('a left justified integer: %-4d\n', 10);
mprintf('an integer converted to float: %#fd\n',10);
mprintf('an integer with a sign: %+4d\n', 10);
mprintf('an integer with a sign: %+4d\n', -10);
mprintf('an integer padded with zeros: %04d\n', 10);
mprintf('an unsigned integer: %u\n', 10);
mprintf('an unsigned integer: %4u\n', -10);
mprintf('an integer converted to hexadecimal: %x\n', 10);
mprintf('a float: %d\n', %pi);
mprintf('a float: %3.2d\n', %pi);
mprintf('a float (exponential form): %3.2e\n', %pi);
mprintf('a float (exponential form): %3.2g\n', %pi);
mprintf('a character: %c\n', 'a');
mprintf('a character: %c\n', 'aaa');

With input booleans:

mprintf("\n%%d: %d,  %%u: %u,  %%o: %o,  %%f: %f,  %%e: %e,  %%s: %s\n" + ..
          "%%d: %d,  %%u: %u,  %%o: %o,  %%f: %f,  %%e: %e,  %%s: %s\n", ..
        %T, %T, %T, %T, %T, %T, %F, %F, %F, %F, %F, %F);
%d: 1,  %u: 1,  %o: 1,  %f: 1.000000,  %e: 1.000000e+00,  %s: T
%d: 0,  %u: 0,  %o: 0,  %f: 0.000000,  %e: 0.000000e+00,  %s: F

With numbered placeholders:

mprintf("%2$s is %1$d-year old.\n", 32, "Peter");
Peter is 32-year old.

With escaped sequences and UTF-8 extended characters:

mprintf("The path T:\\abc does not exist.\n");
mprintf("abcdefghijk\tαβδ\tεϵ\tζηθικλ\rABCDE\n");
--> mprintf("The path T:\\abc does not exist.\n");
The path T:\abc does not exist

--> mprintf("abcdefghijk\tαβδ\tεϵ\tζηθικλ\rABCDE\n");
ABCDEfghijk αβδ εϵ  ζηθικλ

参照

履歴

VersionDescription
6.1.0 Numbered placeholders "%n$.." are supported.
6.1.1 Input boolean data can be converted.

Report an issue
<< print Output functions Xcos >>