下記のマクロが引数なしでよばれても動作するようにするにはどうしたらいいでしょうか。
2回目のsprintfの部分でコンパイルエラーになるます

#define DBG_PRINT(...) {       \
  FILE* fp;              \
  char str[100];           \
  fp = fopen("dbg.txt", "a+");    \
  sprintf(str, "line: %d", __LINE__); \
  fputs(str, fp);           \
  sprintf(str, __VA_ARGS__);    \
  fputs(str, fp);           \
  fclose(fp);             \
}