c言語不定パラメータ関数


printfという関数をよく知っています.
この関数のプロトタイプは次のとおりです.
int printf(const char* format, ...);

パラメータformatは、文字列命令をフォーマットする方法を示します.オプションのパラメータを表し、呼び出し時に...のパラメータはあってもなくてもよく、具体的な状況は実際の状況によって決まる.
 
次は、ファイルにデータを書くための不定パラメータの関数です.
void write_data(const char* fmt, ...)
{
	va_list arg_ptr;
	va_start(arg_ptr, fmt);
	fseek(g_fpDbg, 0L, SEEK_END);	//        
	vfprintf(g_fpDbg, fmt, arg_ptr);
	fflush();						//     
	va_end(arg_ptr);
}

呼び出し例:
write_data("%s-%d-%s
", __FILE__, __LINE__, __FUNCTION__);

end.