• ベストアンサー

g77でのエラー

 私は、主にMS-DOSでwatcom fortranを用いてコンパイルしています。  OPENファイル名をパソコンの画面から読みとるとき、今までは、例えば次のように書いてきました。 character*20 filename write(*,100) read(*,200) filename 100 format(/,'input filename='\) 200 format(A)  すると、画面上に、 input filename= が出て、改行しなくてもその横にファイル名を書くことができました。  しかし、最近Cygwinでg77でコンパイルするようになり、上記の例の場合、\のところでエラーが出ます(Missing close-parenthese(s)~、Unrecognized character~など)。 g77を用いて、改行せずに’input filename=ファイル名’というふうにプログラムを組みたいのですが、上記の例の場合、どうすればいいんですか?教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • hofuhofu
  • ベストアンサー率70% (336/476)
回答No.2

私の環境(Win98SE+Cygwin最新版)では動いたのですが。 結果はどうなったのでしょう?(エラーが出た。改行されてしまった等) ちなみに私が試してみたのは以下のようなソースです。 character*20 filename write(*,100) read(*,200) filename 100 format(/,'input filename=',$) 200 format(A) write(*,*) filename stop end 改行抑止の記述子はコンパイラ毎の独自拡張なので、対応はまちまちですが、g77は$でいけると思うのですが。 http://www.ip.media.kyoto-u.ac.jp/htomita/sec5.html#5.2.1.

yoo7660
質問者

お礼

ご返事どうも有り難うございます。私の間違いでした。$でできました。

その他の回答 (1)

  • hofuhofu
  • ベストアンサー率70% (336/476)
回答No.1

\の代わりに$を使えませんか? format(/,'input filename=',$)

yoo7660
質問者

お礼

ご返事どうも有り難うございます。ためでした。

関連するQ&A

専門家に質問してみよう