Направить вывод в строку
#include <stdio.h>int sprintf( char *buf,const char *format,... );
libc
Функция sprintf() аналогична fprintf(), за исключением того, что запись производится в буфер buf. Завершающий нуль всегда размещается в конце сгенерированной строки.
NULL
.#include <stdio.h>#include <stdlib.h>/* Create temporary file names using a counter */char namebuf[13];int TempCount = 0;char * make_temp_name(){sprintf( namebuf, "ZZ%.6o.TMP", TempCount++ );return (namebuf);}int main( void ){FILE *tf1, *tf2;tf1 = fopen( make_temp_name(), "w" );tf2 = fopen( make_temp_name(), "w" );fputs( "temp file 1", tf1 );fputs( "temp file 2", tf2 );fclose( tf1 );fclose( tf2 );return (EXIT_SUCCESS);}
ANSI, POSIX 1003.1
Безопасно вызывать данную функцию в обработчике сигналов, если не обрабатываются данные с плавающей точкой.
errno, fprintf(), fwprintf(), printf(), snprintf(), swprintf(), vfprintf(), vfwprintf(), vprintf(), vsnprintf(), vsprintf(), vswprintf(), vwprintf(), wprintf()
Предыдущий раздел: Описание API системной библиотеки