[問題] 除錯 The type of the function refere …

看板Fortran作者 (阿真)時間15年前 (2009/07/20 15:58), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/1
這是在用 intel fortran compiler 10.1.011時出的問題 程式碼不是我寫的 不過我現在需要除錯 可是不知道錯在哪 想請版上給點建議 也許這對你們來說是很簡單的 謝謝 除錯的訊息 Error: The type of the function reference does not match the type of the function definition. [UVFINIT] []內是function的名字 uvfInit 就我理解 "function reference的型態 與 function definition的型態不符" 我自己翻譯完也知道沒有多少幫助… 想請問是否: function definition類似如下: FUNCTION f(x,y,z) REAL f,x,y,z 這樣的寫法 而function reference就是指使用的時候嗎?? ex. REAL result result=f(x,y,z) 以上的"型態錯誤"不知道是怎麼樣發生的 希望有人能幫忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.63.180

07/20 18:45, , 1F
f,x,y,z在主程式裡有宣告嗎?
07/20 18:45, 1F

07/20 21:18, , 2F
主程式不在這檔案裡面 這好像是寫lib的專業
07/20 21:18, 2F

07/20 21:18, , 3F
f x y z 是在function中宣告的
07/20 21:18, 3F

07/20 21:19, , 4F
07/20 21:19, 4F

07/21 08:36, , 5F
所有格式都對應正確嗎~X Y Z F RESULT
07/21 08:36, 5F
在程式碼(是一個副程式)中使用是這一句 dummy=uvfInit(softPdfType,Nl,Limi,Prob,C,Mean,As,bs,p) 會寫成函式又要它傳回垃圾只是因為後來的程式要輸入這個uvf"函數"而非"副程式" ps.uvf是函數 uvfInit是uvf中的一個entry 可用做初始計算之類的作用 ENTRY uvfInit(softPdfType,Nl,Limi,Prob,C,Mean,As,bs,p) 這句是entry 格式正確對應是指? 我目前觀察 個數都對 但我不清楚還有哪些東西屬於我complie出錯誤訊息的部份 所以除錯起來非常困難... 還有變數型態 這個副程式裡的變數 INTEGER softPdfType, Nl DOUBLE PRECISION Limi(*), Prob(*), C, Mean, As, bs, p 這是函數uvf裡的變數 DOUBLE PRECISION uvfInit INTEGER softPdfType, Nl DOUBLE PRECISION Limi(*), Prob(*), C, Mean, As, bs, p ps.其它跟uvfInit沒關係(沒用到)的變數沒有列在裡面 看起來表面上也都相同 有一些些差別是 Limi 跟 Prob 宣告時有 (*) 使用時便沒有 不知道是不是這個關係 ※ 編輯: KSJ 來自: 140.112.63.180 (07/21 13:24)
文章代碼(AID): #1AP2E8Yh (Fortran)
文章代碼(AID): #1AP2E8Yh (Fortran)