Fortran の Preprocessor

Fortran のソースコードの表記

#ifdef HOGE
    ! something goes on
#endif
#if defined(HOGE) && defined(FOOBAR)
    ! another
#endif

基本は ifdef と ifndefで,2つ以上を使う場合は if defined と && や || を組み合わせる. if !defined と !をいれると否定(ifndef).

デバッグ時に読みやすく

cppdef の種類が多いとソースコードが読みにくいので,特定のものだけ抜き出してみたい場合は cpp コマンドに -D{NAME} をつけると抽出できる.

cpp -P -DHOGE -DFOOBAR filename.f90 filename_preprocessed.f90



コンパイル

上のようなプリプロセスをした中間ファイルを生成せずに,そのままコンパイルするなら

gfortran -c -cpp -DHOGE -DFOOBAR filename.f90

とすれば filename.o ができる.


Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes
Last-modified: 2023-12-04 (Mon) 09:19:31 (191d)