How to use vfprintf() function to write formatted data from variables to file in C

1 Answer

0 votes
#include <stdio.h>
#include <stdarg.h>

void WriteFormattedDataToFile(FILE *fp, const char * format, ...)
{
	va_list args;
  
	va_start(args, format);
	vfprintf(fp, format, args);
	va_end(args);
}
   
int main(void)
{
	FILE *fp = fopen("d:\\data.txt", "w");
	if (fp == NULL) 
	{
		perror("Error open file");
		return 1;
	}
	WriteFormattedDataToFile(fp, "int: %d \n", 100);
    WriteFormattedDataToFile(fp, "int: %d string: %s\n", 300, "abcd");
	
	fclose(fp);

    return 0;
}

/* 
file content: 
int: 100 
int: 300 string: abcd
*/
  
/*
run:


*/

 



answered May 7, 2016 by avibootz
...