[問題] 除錯 The type of the function refere …
這是在用 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
07/20 18:45, 1F
→
07/20 21:18, , 2F
07/20 21:18, 2F
→
07/20 21:18, , 3F
07/20 21:18, 3F
→
07/20 21:19, , 4F
07/20 21:19, 4F
推
07/21 08:36, , 5F
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)
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章