STR_FORMAT機能ブロック

この機能ブロックは、書式設定された文字列を返します。

この機能ブロックは、C++のsprintf関数に対応しています。

注意: この機能ブロックには2つ以上の入力が含まれることがあります。機能ブロックを右クリックすると、別の入力を追加できます。

入力フォーマット

入力は書式設定を定義します。これは、結果に直接コピーされる通常の文字(%を除く)と、各自が独自のパラメータを参照する変換命令から成ります。

変換命令は次のプロトタイプに従います:

%[ArgNum$][Flags][Weite][.Präzision]Spezifizierer.
ArgNum

ドル記号 $ の後に続く整数で、変換に使用する入力 STR# の番号を指定します。

Flags
フラグ 説明
- 指定されたフィールド幅内で左揃え; 標準は右揃えです
+ 正の数にはプラス記号 + を付けます。標準では、負の数のみに負の符号が付きます
(スペース) 結果をスペースで埋めます。これは標準です。
0 左側にゼロで埋めます。s指定子では、右側にもゼロで埋めることができます。
'(文字) 結果を指定した文字で埋めます。
Weite

変換結果が持つべき文字数(最小)を示す整数です。

Präzision

点 . に続く整数の意味は、指定子によって異なります:

  • e, E, f, F 指定子: これは、小数点以下に出力する桁数を設定します(標準では6です)。
  • g, G 指定子: 出力する有効な小数桁の最大数。
  • s 指定子: 文字列内の最大文字数を指定する切り捨てポイントのように動作します。

注意: 明示的な値なしで点が指定された場合、0が仮定されます。

Spezifizierer
指定子 説明
% パーセント記号。必要なパラメータはありません。
b パラメータは整数として扱われ、2進数として出力されます。
c パラメータは整数として扱われ、ASCII文字セットからの文字として出力されます。
d パラメータは整数として扱われ、符号付き10進数として出力されます。
e パラメータは指数形式(例: 1.2e+2)の数値として扱われます。精度の指定は、小数点以下の桁数を表します。
E e指定子と同様ですが、大文字(例: 1.2E+2)で出力されます。
f パラメータは浮動小数点数として扱われ、浮動小数点数として出力されます(ロケール依存)。
F パラメータは浮動小数点数として扱われ、浮動小数点数として出力されます(ロケール非依存)。
g 一般的な形式。
Pが精度で、0でない場合は6、精度が指定されていない場合は6、精度が0の場合は1です。その後、Eによる変換がXの指数を持つ場合:
P > X ≥ -4の場合、f指定子と精度P - (X + 1)で変換されます。それ以外の場合は、e指定子と精度P - 1で変換されます。
G g指定子と同様ですが、EとFが使用されます。
o パラメータは整数として扱われ、8進数として出力されます。
s パラメータは文字列として扱われ、出力されます。
u パラメータは整数として扱われ、符号なし10進数として出力されます。
x パラメータは整数として扱われ、小文字の16進数として出力されます。
X パラメータは整数として扱われ、大文字の16進数として出力されます。

注意: 指定子cは埋め込みと幅を無視します。

警告: 文字列の幅指定と、1文字あたり複数バイトを期待する文字セットを使用しようとする試みは、予測不可能な結果につながります。

変数は、指定子に適した型に変換されます:

指定子
文字列 s
整数 d, u, c, o, x, X, b
浮動小数点数 g, G, e, E, f, F

入力STR1..STR#

入力または複数の入力は、フォーマット入力で指定された文字列内の置換する値をそれぞれ定義します。

出力

生成された文字列を返します。