Re: [問題] f90檔編譯問題求助
按照你上一篇文章的程式碼,fortran 90的語法大概像這樣:
program hello
!this program will ask name and say hello
character(25) :: u
WRITE(*,*) 'What is your name?(no more than 25 characters)'
READ(*,*) u
WRITE(*,*) 'Hello! ',trim(u),'. How are you?'
end program hello
1.主程式名稱是hello,結束時最好用end program hello,明確表示hello結束了。
檔名結尾.f 表示程式是fortran 77格式,.f90表示fortran 90格式。
end program hello是fortran 90的語法,end是fortran 77語法。
如果你的檔名和實際程式的語法不同的話,照理說應該會向下相容,
但無法向上相容。結果你的錯誤訊息看起來是編譯器找不到程式的結尾。
2.註解請用!,不要用C。
3.宣告的 :: 意思是,::的左邊是變數的型態和屬性,::的右邊是變數名稱。
4.NAME在fortran有別的用途,或許應該避免把變數名稱叫做NAME。
5.trim是內建函數,會把傳入的字串有空格的尾巴刪除。
6.putty只是連線程式,就好像PCMan一樣可以用來連批踢踢,你也可以用putty連
上批踢踢,只要把連線通訊協定選為Telnet,主機ptt.cc就可以了。
所以你在putty上用vi寫程式,這句話聽起來很奇怪。應該說用putty連上某台主機,
或是說透過ssh或telnet連上某台主機,其實可以不用說,因為跟fortran沒關係。
7.Fortran是很棒的程式語言,最好從fortran 90開始學,放棄fortran 77。
最後會發現Fortran可能是最快最有效率的,最容易平行化的程式語言。不需要mpi,
不用openmp,Fortran本身語法就能做平行處理,它叫做coarray,語法使用中跨號[*]
※ 引述《takaoclass (高雄級)》之銘言:
: 我是重拾fortran不久的新手,
: 我在putty上用vi編輯器寫了一隻f90檔,
: 用gfortran hello.f90和gfortran -o k.exe hello.f90編譯時,
: 都得到以下錯誤訊息:
: Error: Unexcepted end of file in 'hello.f90'
: 可是我用gfortran指令編譯f檔卻毫無問題,
: 請哪位高手給我指點一下,感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 129.12.199.200
※ 文章網址: https://www.ptt.cc/bbs/Fortran/M.1524340795.A.2A9.html
推
04/25 03:08,
6年前
, 1F
04/25 03:08, 1F
→
06/02 05:38,
6年前
, 2F
06/02 05:38, 2F
→
06/02 05:38,
6年前
, 3F
06/02 05:38, 3F
推
04/18 11:11,
6年前
, 4F
04/18 11:11, 4F
→
04/18 11:12,
6年前
, 5F
04/18 11:12, 5F
→
04/18 11:12,
6年前
, 6F
04/18 11:12, 6F
討論串 (同標題文章)
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章