0
我試圖通過IDL程序運行大量數據,但是當我這樣做時我會得到無意義的結果。如果輸入過大,IDL程序會返回erronius結果
如果我分開輸入,然後分別給每個程序到程序,然後將輸出拼接在一起,它工作正常。這導致認爲代碼中某處出現了溢出問題,但迄今爲止我還沒有任何運氣調試它。
有沒有一種方法,我可以在IDL更改默認的數據類型,大小,這樣,如果我聲明一個變量,如...
A = functionCall(blah,blah2)
將啓動變量作爲32位值,而不是16位(這是默認)?
我知道你可以通過我的代碼做
A = long(functionCall(blah,blah2))
手工做,這是一個幾千線長,我寧願不經歷和手動更改此爲每個變量。
那麼你有一個內存問題或「整數」和「長整型」變量之間的差異?如果是後者,則只需在相關位置添加以下代碼:'* 1L'。這會將事物轉換爲長整數。此外,默認情況下IDL是64位,除非您運行6.0以前的版本。 –