それは p が int* だからです。
char* p にすればよろし。
理由は自分で調べれ...