struct hoge{...};
char c[sizeof hoge];
hoge* p = new(c) hoge;
bool b = (void*)p == (void*)c;

bは常に真になりますか?