char *p = "string";
はconstがない時代の古い書き方だよ。
良い子は
const char *p = "string";
のようにconstを付けること。