What is the difference between printf, sprintf and fprintf?
Last Updated :
11 Apr, 2023
printf: printf function is used to print character stream of data on stdout console.
Syntax :
printf(const char* str, ...);
Example :
C
#include <stdio.h>
int main()
{
printf ( "hello geeksquiz" );
return 0;
}
|
sprintf: String print function instead of printing on console store it on char buffer which is specified in sprintf.
Syntax:
sprintf(char *str, const char *string,...);
Example :
C
#include <stdio.h>
int main()
{
char buffer[50];
int a = 10, b = 20, c;
c = a + b;
sprintf (buffer, "Sum of %d and %d is %d" , a, b, c);
printf ( "%s" , buffer);
return 0;
}
|
Output
Sum of 10 and 20 is 30
fprintf: fprintf is used to print the string content in file but not on the stdout console.
fprintf(FILE *fptr, const char *str, ...);
Example :
C
#include <stdio.h>
int main()
{
int i, n = 2;
char str[50];
FILE * fptr = fopen ( "sample.txt" , "w" );
if (fptr == NULL) {
printf ( "Could not open file" );
return 0;
}
for (i = 0; i < n; i++) {
puts ( "Enter a name" );
gets (str);
fprintf (fptr, "%d.%s\n" , i, str);
}
fclose (fptr);
return 0;
}
|
Input:
Enter a name GeeksforGeeks
Enter a name GeeksQuiz
Output :
0. GeeksforGeeks
1. GeeksQuiz
Thank you for reading, i will soon update with scanf, fscanf, sscanf keep tuned.
Share your thoughts in the comments
Please Login to comment...