>>601
> addNode()で返ってきたものを逐一Nodeに再代入して使っているので、
> ルートの位置を保存しておく(あとでTraverseNode()で使う)ためにnodeを宣言していました。
> だからnodeをなくすとルートの位置が保存できなくなると思うのですが。
addNode()が返してるもの自体がルートだろ?

> これは…いままでおもいっきり while ((c=getchar())!=EOF) なんていう式を使っていたので
> それに倣っていました。
fgetc()やgetchar()の戻り値をなぜcharに代入しちゃいけないかは、
はっきりいってFAQなので>>1にあるリンクを読んでくれ。

> でもEOFは0か1を返すのでcharと比較しても大丈夫なような…。
それと、EOFとfeof()かなにかを混同してないか。

> ptrは…。ちょっと理解するのが難しいのでじっくり考えます。ノードのなかにポインタがあるから、
> それを使えば他のノードも指せるということですよね。(ptrを使わなくても)
「読み込んだ単語は全部ツリーにコピーされてるわけだから、
それと別に保存しておく意味はないだろ」ということをいってるんだが、
伝わってるかな。