>>371
それは、fgersがchar*を前提に作られてるからです。
fgets((char *)a,30,fp);
にすれば、コンパイル時のエラーはでなくなるでしょうが、あなたの思ったとおりの動作にはならないでしょう。