C言語 文字列データに書式付きで出力 - stdio.h - [ sprintf ]
2008.10.14 Tuesday | by LRESULT
文字列データへ書式付きで出力するには、sprintf()を使用します。
sprintf()は、その名の通り、printf()関数とよく似てます。
sprintf()の最初の 「s」 は、string の s です。
書式 | int sprintf( char *s, const char *format, ... ) |
---|---|
機能 | 文字列に書式付きで出力 |
引数 | char *s : 出力する文字列の格納 const char *format : 書式文字列 ... : 可変個引数。書式で指定された変数をカンマ区切りで指定 |
戻り値 | 出力したバイト数(文末の¥0は含まない)を返します。 |
※ 格納した文字列には、文末に ¥0 が付加されます。
書式付き文字データ (123を16進数にした文字列 )を、 printf()と、sprintf()で作成し、画面に表示してみます。 |
---|
#include <stdio.h> int main(void) { int i = 123; char s[10]; printf( "16進数で表示¥n" ); printf( "i = %#x¥n", i ); /* 0x7b */ sprintf( s, "i = %#x¥n", i ); /* 0x7b */ puts( s ); return 0; } |
16進数で表示 i = 0x7b i = 0x7b |
---|
と、表示されます。 printf()と、sprintf()は、画面か文字列かの違いで 基本的には同じ使用方法です。 |