Translations of this page?:

sprintf

文法:

    #include <cstdio>
    int sprintf( char *バッファ, const char *フォーマット, ... );

sprintf()関数は、出力がバッファに送信されることを除くと、printf()関数と非常によく似ています。この関数の返り値は、出力した文字数になります。

サンプル:

     char string[50];
     int file_number = 0;
 
     sprintf( string, "file.%d", file_number );
     file_number++;
     output_file = fopen( string, "w" );

sprintf()は、文字列を数値に変換するatoi()とは逆に、数値を文字列に変換するのに使用することができます。

例えば、以下のコードは、sprintf()を使用して、整数を文字列に変換しています。

     char result[100];
     int num = 24;
     sprintf( result, "%d", num );

下記のコードは、変換元が整数ではなくて、浮動小数点数というのを除くと、上記のコードとほぼ同じです:

     char result[100];
     float fnum = 3.14159;
     sprintf( result, "%f", fnum );

この関数はバッファの境界値のチェックを行わないため、バッファオーバーフローの危険があります。もしも、安全な別の方法を使用したい場合には、snprintfを使用してください。

関連トピック: snprintf, atof, atoi, atol, fprintf, printf

 
• • • SitemapRecent changesRSScc