できれば、キャストを使わず、codeを書きたいのですがどのように変更すればよいでしょうか。ご指導お願いいたします。8年前キャストを使わないなら素直にfscanf使った方がよろしいかと思います。num=strtol(buf,80,fp);問題があるのはここですね。この場合strtolの使い方を間違われているようです。base);となっております。*s」は、文字列が入っている変数(配列)を入れる場所です。今回の場合ですと、bufを入れる場所でしょうか。**endptr」は、このプログラムでは必要ないように思えます。NULLとでも入れておけばいいと思います。base」は、何に変換するかですね。10とでも書いとけばいいと思いますが、使ったことないので、一度調べてみてから使ってみてください。num=strtol(buf,NULL,10);にしたところ、期待通りに動作いたしました。苦労していたので、嬉しい限りです。本当にありがとうございます。ミクプラは自由にリンクできます。