>>889
演算子が多重定義されているから。
つまり、渡されたのがvoid*かchar*かで別の関数が呼ばれる。
なので、この場合void*型にキャストすればアドレスが出力される。はず。

"0x"を付けたければ「マニピュレーター」を調べてくれ。