ループのたびに'\0'の位置を検索したり、文字の長さを変えたりすれば
そりゃあ時間かかるよな。

'\0'の位置がまとまってなくてランダムな配置なら、
悲惨なほど時間がかかる。(250KBで試してるけど、いつまで経っても終わらない)