f() は char **p を受け取るようになってるからな。
p が指す先の *p が char * 型で、更にその先の **p が char 型になる。