Light C | ← → 目次 索引 |
int sprintf( char* buf, const char* form, ... ); (stdio.h)
int vsprintf( char* buf, const char* form, va_list lst );
データを書式化して buf に書き込みます。form には、出力変換指定子を含む文字列を指定します。また、form 内の % 文字列に対応する変数を form の後に指定します。
原則として、form の文字列がそのまま出力されます。
ただし、form 内に % で始まる部分文字列 (出力変換指定子、"%d" など) を含めると、その部分は form の後に指定した引数に置き換えられます。form は複数の出力変換指定子を含めると、form 後の複数の引数に順番に置き換えられます。form 後の引数の出力形式は、出力変換指定子の文字列で詳細に制御できます。
また、form 内に "\n" などのエスケープ シーケンスを含めると、その部分は実際のコードに置き換えられます。
例 | sprintf( buf, "i=%d\n", i ); |
sprintf( buf, "i=%10.3ld\n", num ); |
sprintf は vsprintf を使って次のように定義されています。
例 | int sprintf( char* buf, const char* form, ... ) { |
va_list lst; | |
va_start( lst, form ); | |
return( vsprintf( buf, form, lst ) ); | |
} |
メモ 文字列の長さについては、%d、%f などで生成される個々の数値の文字列表現が 500 バイトを超えてはならないことを除き、制限はありません。
char* _itoa( int num, char* str, int base ); (stdlib.h)
char* _utoa( unsigned num, char* str, int base );
char* _ltoa( long num, char* str, int base );
char* _ultoa( unsigned long num, char* str, int base );
数値 num を基数 base で文字列に変換し、str に格納します。str の末尾には 0 が付加され、str が返されます。
Copyright © Tama Software Ltd, 1999-2012. | ← → 目次 索引 |