In C, sprintf()
, or string print formatted, is used to store formatted data to a string.
The general syntax of sprintf()
is:
int sprintf (char *str, const char *format.. );
str
: Pointer to the array where the string is to be stored
format
: This contains the data to be printed, written in a particular format using format specifiers
A format specifier is a unique set of characters which is used to format the data being read in a certain way.
The format specifier follows the following prototype:
%[flags][width][.precision][length]specifier
If the function successfully executes, it returns the total number of characters stored in the string, excluding the null character at the end of the string.
If an error occurs, a negative number is returned.
The following example will help clarify the use of the sprintf()
function:
Suppose we wish to store values of different data types in a string. We will proceed as follows:
#include<stdio.h>int main() {char string[100] = {'\0'};char str[10] = "Today is ";int date = 1;float time = 3.9339f;printf("String before using sprintf(): %s \n", string); // empty stringsprintf(string, "%s %d %f", str, date, time );printf("String after using sprintf(): %s", string); // modified stringreturn 0;}
Free Resources