// a.h
static int a = 1;

// b.h
#include "a.h"
static int a = 2;

aが再定義されていますというエラーがでるのですが、
staticにするとそのファイル内だけで有効になって、他のファイルで定義されていても被らないんではないんですか?