![](/img/trans.png)
[英]FORTRAN 77 comments starting at column 7
如果我理解正確,第 1 列中以C開頭的任何行都會自動成為注釋。 那么為什么我看到的一些代碼示例會在第 7 列開始注釋文本呢? 這只是為了讓所有文本排列得更好,還是某些編譯器需要它? ...
[英]FORTRAN 77 comments starting at column 7
如果我理解正確,第 1 列中以C開頭的任何行都會自動成為注釋。 那么為什么我看到的一些代碼示例會在第 7 列開始注釋文本呢? 這只是為了讓所有文本排列得更好,還是某些編譯器需要它? ...
[英]Segmentation fault when Fortran subroutine calls a C program
我有這個大的 Fortran 77 代碼,我正在嘗試編譯和執行。 當我運行可執行文件時,我的程序段錯誤。 該代碼是大約 20 年前編寫的,我使用的是 pgi/2020.4 編譯器。 這是我收到的分段錯誤消息。 程序收到信號 SIGSEGV,分段錯誤。 0x00002aaaac18962d in v ...
[英]Is it necessary to place an ampersand on the 73rd column for line continuations in Fortran 77?
考慮以下具有長字符串變量的代碼: 在第 2 行和第 3 行的第 73 列中,有一個 & 符號。 和號是必需的,還是可以刪除? 我知道第 6 列的開頭&對於續行很重要,但我不知道第 73 列的尾隨&是否有任何意義。 ...
[英]Compiling F77 with R CMD SHLIB for use in R package. Changing `-fmax-stack-var-size=`
我從 1980 年代繼承了一些 F77 代碼,我希望最終在 CRAN 上的 R 包中使用這些代碼。 基本上,我將用一個.Call代替一個用直接 R 編寫的慢函數,該函數運行速度提高了 100 倍。 我過去曾用 C 做過類似的繁重工作。 但是,當我通過R CMD SHLIB編譯 fortran 子例程 ...
[英]Compile with gfortran without c$omp& directive
這個問題與使用 gfortran -fopenmp 編譯支持 OpenMP 的 Fotran77(結合一些 C 庫)固定格式代碼有關。 這個答案討論了在繼續下一行的情況下,如果所需的列超過 72,在下一行中用於支持 OpenMP 的代碼的正確指令是c$omp& sentinel。 例如, ...
[英]Declaring types of old F77 functions and subroutines for Fortran 2003 code
我們有一個新的 Fortran 2003 代碼,它調用並鏈接到 Fortran 77 庫(在外部包中)。 有沒有辦法在 F2003 的外部庫中為 F77 函數和子例程編寫聲明,以確保在使用錯誤參數類型調用函數時給出錯誤消息? 一種方法是為每個 function 編寫包裝器,但這似乎需要做很多工作。 ...
[英]How to read a special line in .txt file using Fortran?
我有一個 .txt 文件,其中有下一個特殊行: 我想在注釋 line.INPUT_PARAMETERS 之后閱讀數字,所以:如果我有: 我想收到 A=1,B=2,C=5,D=10。 我怎樣才能做到這一點? ...
[英]Continuation line trick to adjust Fortran I/O at compile time, with CPP directives, avoiding redundancy
在一些遺留Fortran 77子例程中,我使用了 position 6 中的續行符號&和很少的cpp指令在編譯時調整I/O - 取決於很少的參數 - 以避免冗余。 看一個更簡單的例子,如下: 現在,經過一些f90重構(基本上,將幾乎所有內容都放在modules中),我正在努力重現上述行為,即 ...
[英]When is implicit type declaration ever good?
我有個同事寫的是Fortran,一般都是按照F77的標准。 我不得不使用他們的一些源代碼,我發現使用隱式類型聲明(而不是使用implicit none )確實令人困惑和沮喪。 他們這樣做的原因是“消除我程序開頭的所有類型聲明”。 在我看來,這是破壞程序及其許多子例程的可讀性和理解性的糟糕權衡。 在 ...
[英]Are spaces no longer allowed in variable names
當我在 Uni 的時候,在 Fortran IV 中,我們曾經能夠編寫這樣的程序 我嘗試將其構建為 F77 程序並編譯並運行。 我不知道 F77 中是否明確允許使用空格,但我記得在 Fortran IV (66) 中的變量中使用空格編寫程序。 它在 gfortran、Powerstation 4、S ...
[英]F2C structure and record
我正在使用F2C (FORTRAN 77 TO C) 將巨大的 FORTRAN 代碼轉換為 C。 我的源 FORTRAN 文件之一有一個 F2C 由於某些原因不喜歡的包含文件。 這是帶有擴展名.INS的包含文件(TAGLINE.INS)(我懷疑擴展名是否重要): 嘗試使用 F2C 將源代碼轉換為 C ...
[英]Calling FORTRAN function from C wrapper
我是新手,但我需要從 C 訪問一些舊的 Fortran 77 函數。如果可能,我不想更改 Fortran 代碼,我真的更喜歡編寫一個包裝器來從 C 調用 Fortran 函數。我希望得到一個最小的工作示例(在 Linux 上)。 我做了什么: 在文件 somefunction.f 中: 用gf ...
[英]Passing subarray of 2-dimensional array in FORTRAN-77
我有二維數組 其中“三角形”是一個向量數組(一維數組),我也有子程序 有沒有辦法將“三角形”變量中的向量之一傳遞給這個子程序? Fortran-90 可以做到這一點: triangle(0, :)給出第一個三角形數組,但我只允許使用 FORTRAN-77,所以這不行,有什么建議嗎? ...
[英]Use of arithmetic if in fortran 77
如果在 f77 中,我有一個關於算術的問題。 如果我正確理解它應該這樣使用: 並且意味着如果整數 <0 則執行 st-,如果整數 = 0 則執行 st0,而整數 > 0 則執行 st+。 我有一個這樣的案例: 如果數字小於 0,我假設 test=0 語句是正確的? 謝謝 ...
[英]FORTRAN 77 Divide By Zero Behavior
我正在將舊的 FORTRAN77 程序重新設計為 Python 有一段時間了。 不過,我遇到了一個問題:當除以零時,FORTRAN 程序似乎只是繼續處理數據而沒有問題。 然而,可以預見的是它會導致 Python 中的一個問題。 我無法在 F77 的任何官方渠道上找到有關此問題的討論,而且我只有我正在 ...
[英]How to write columnwise in FORMAT in FORTRAN 77
我在 ANSYS 計算軟件上使用 FORTRAN77 作為第三方語言。 在這里,我們可以在 I/O 操作期間將整個行和列寫入文件。 但是,我無法將 cursor 移動到第一行,然后逐列寫入 - 對於定義的二維數組中的每一列。 不幸的是,它將所有數據寫入單列。 我需要知道在引用為 XXX *CFOPE ...
[英]Can a CHARACTER declaration and its DATA statement come before an IMPLICIT statement?
FORTRAN 是我在 1970 年代的第一門編程語言,但我無法確定以下 FORTRAN 代碼是否有效。 我無法編譯或運行代碼。 C Lots of comments... C VARIABLE DECLARATIONS BEGIN HERE (the exact wording) 所有的參考資 ...
[英]f2py raises 'Assertion error' while interfacing Fortran77 file with exclamation mark comments
我的任務是將Fortran 77代碼包裝到python3中。 我試圖用以下命令包裝它 f2py引發以下錯誤 代碼的對應部分: 我不明白的是'!'是什么問題 評論? 如果刪除它們,不會引發錯誤。 也有很多行帶有相同的“!” 在這部分代碼之前的注釋。 實際上,我要 ...
[英]Identify version of Fortran of this code for the LF compiler
我是 Fortran 的新手。 我得到了一個應該在 Fortran 90 中的文件,但編寫為使用 Lahey Fujitsu 編譯器編譯(稀疏文檔指出它應該使用lf95 filename.f -out compiled_name @imsllf95.cmd )。 但是,有些行用c注釋,據我所知,這是 ...
[英]Unable to open file by a relative path in FORTRAN 77
我編寫了 FORTRAN 77 代碼,它打開(創建)一個文件並將一些信息寫入其中。 如果我打開文件,一切都很好 但是,如果我希望在指定相對路徑的不同目錄中創建文件(OS Ubuntu) 我的 gfortran 編譯器給了我以下錯誤: 似乎絕對路徑在我的情況下有效。 我花了一些時間在互聯網 ...