sprintf
データの文字列または文字ベクトルへの書式設定
構文
説明
は、str
= sprintf(formatSpec
,A1,...,An
)formatSpec
で指定された書式演算子を使用して、配列 A1,...,An
のデータを書式設定し、結果のテキストを str
に返します。関数 sprintf
は A1,...,An
の値を列の順序で書式設定します。formatSpec
が string の場合、出力 str
も string となります。それ以外の場合、str
は文字ベクトルです。
書式設定された複数のテキストを string 配列または文字ベクトルの cell 配列として返すには、関数 compose
を使用します。
演算に失敗した場合、[
はエラー メッセージを文字ベクトルとして返します。それ以外の場合、str
,errmsg
] = sprintf(formatSpec
,A1,...,An
)errmsg
は空です。
は str
= sprintf(literalText
)literalText
内の \n
や \t
などのエスケープ文字シーケンスを変換します。その他すべての文字を変更せずに返します。literalText
に書式演算子 (%f
など) が含まれる場合、str
はそれ以降のすべての文字を破棄します。
例
入力引数
出力引数
ヒント
関数
sprintf
はfprintf
と似ていますが、fprintf
の場合はファイルに出力したりあるいはコマンド ウィンドウに表示したりします。関数
sscanf
およびfscanf
の読み取りに対する書式指定子は、関数sprintf
およびfprintf
の書き込み用の形式とは異なります。読み取り関数は精度フィールドをサポートしません。幅フィールドは、書き込み用には最小値を、読み取り用には最大値を指定します。無効な書式演算子または特殊文字を指定すると、
sprintf
はその無効な演算子または文字までのすべてのテキストを出力し、残りを破棄します。例:
formatSpec
が'value = %z'
の場合、%z
は書式演算子ではないため、sprintf
は'value ='
を出力します。例:
formatSpec
が'character \x99999 = %s'
の場合、\x99999
は有効な特殊文字ではないため、sprintf
は'character'
を出力します。
参照
[1] Kernighan, B. W., and D. M. Ritchie, The C Programming Language, Second Edition, Prentice-Hall, Inc., 1988.
[2] ANSI specification X3.159-1989: “Programming Language C,” ANSI, 1430 Broadway, New York, NY 10018.
拡張機能
バージョン履歴
R2006a より前に導入