[問題] 副程式的命名規則?

看板Fortran作者 (jsb)時間13年前 (2011/04/14 10:28), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
最近寫了一個副程式,用來把 character string 中第一個 word 剪出來。 起初把它叫做"cut1word(instr,outstr)",編譯的時候編成 .o 檔再加進 .a 檔。 主程式連結以後一直出問題,找半天不知道為何,所以用 cut1word.f 直接編譯。 怪怪,竟然成功了。 再試一次把 .a 和 .o 全部移除,重新建立 .o 和 .a 檔--失敗。 再用一次用 cut1word.f 直接編譯--成功。 後來想想這樣直接用 .f 編譯實在沒效率,胡亂嘗試的結果,最後是: 把 cut1word(instr,outstr) 和 cut1word.f 改叫做 cutword(instr,outstr) 和 cutword.f (少了個"1") 這樣就可以??!!我一定是遇到鬼了。 有人有類似的經驗嗎? p.s. 上次有這種經驗是發現 x/1 和 x/1.0 結果不一樣的時候。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.76.11

04/14 16:54, , 1F
附帶一題,我用的是 gfortran。
04/14 16:54, 1F

04/14 16:57, , 2F
而且副程式內有隱含宣告 character*(*) instr,outstr
04/14 16:57, 2F

05/08 17:11, , 3F
好像不能用數字??!! 1和1.0當然不一樣,整數或浮點
05/08 17:11, 3F
文章代碼(AID): #1DfblQb7 (Fortran)
文章代碼(AID): #1DfblQb7 (Fortran)