func(const char *str)ならば、関数先で渡した内容は変更されない。
もしかしたらとは思うが、ポインタをコピーして渡すわけだから、関数内で
strを変更しても、渡した側には影響はない。むしろ、
func(const char * const str)と書かれると、関数内でstrを動かせなくなって
不便になる。