sprintf
来自cppreference.com
語法:
#include <cstdio> int sprintf( char *buffer, const char *format, ... );
sprintf()函數和printf()類似,只是輸出是列印到緩衝區buffer。返回值是寫入字元的數目。例如:
char string[50]; int file_number = 0; sprintf( string, "file.%d", file_number ); file_number++; output_file = fopen( string, "w" );
注意sprintf()和atoi()做的正好相反——atoi()將字元串變換(convert)為數字,而sprintf()可以用來將數字變換為字元串。 例如,下面的代碼使用sprintf()將一整數變換為字元串:
char result[100]; int num = 24; sprintf( result, "%d", num );
這段代碼很簡單,它只是將一個浮點數變換為字元數組:
char result[100]; float fnum = 3.14159; sprintf( result, "%f", fnum );
注意這個函數並不會檢查緩衝區邊界自然會有緩衝區溢出的危險。安全的替代函數是 c/io/snprintf。
相關主題: c/io/snprintf, fprintf, printf