「my_header.h」で定義しました
FILE *f;
char *logfile = "my_output.txt";
#define OPEN_LOG f = fopen(logfile, "a")
#define CLOSE_LOG fclose(f)
「my_source.c」では、このように使用しました
#include "my_header.h"
....
OPEN_LOG;
fprintf(f, "some strings\n");
CLOSE_LOG;
ただし、リンカーは言う
my_source.o:(.data+0x0): multiple definition of `logfile'
どうすれば修正できますか?