Eur*_*ust 3 fortran module fortran95
我在Fortran 95上有一个非常可怕的错误:
Fatal Error: While reading module 'list5.mod' found module version 0, expected 6
Run Code Online (Sandbox Code Playgroud)
我已经包含了我的模块的主要结构.我非常怀疑它与我的模块中的内容有什么关系,因为它给了我关于那些的错误信息,我已经能够修复它们,这意味着它能够通过我的模块很好,它只是与我使用模块的方式.也许?
MODULE list5
IMPLICIT NONE
CONTAINS
----
END MODULE
Run Code Online (Sandbox Code Playgroud)
主程序的结构如下:
PROGRAM mainlist
USE list5
IMPLICIT NONE
!Variable Declaration
INTEGER:: opt
INTEGER, PARAMETER:: maxitems=50
INTEGER:: size=0
CHARACTER(20):: itemarray(50)
INTEGER:: quantityarray(50)
INTEGER:: totalquantity, i=0
REAL:: totalprice=0, pricearray(50)=0
CHARACTER(20), DIMENSION(:)::Item
CHARACTER(20):: ItemSought
LOGICAL:: Found
INTEGER:: Location
INTEGER:: NumItems=0, SmallestItem=0
!Select statement for the menu
DO
opt=choices()
SELECT CASE (opt)
CASE(1)
size=size+1
CALL getItemData(itemarray,pricearray,quantityarray)
CASE(2)
CALL getFileItems(size,itemarray,pricearray,quantityarray)
CASE(3)
CALL pickItemRandomly (size)
CASE(4)
CALL calcListTotals
(pricearray,quantityarray,totalprice,totalquantity)
CALL printList(size,itemarray,pricearray,quantityarray,totalprice, totalquantity)
CASE(5)
CALL sortByItem(itemarray, pricearray, quantityarray)
CASE(6)
CALL sortByPrice(itemarray, pricearray, quantityarray)
CASE(7)
CALL writeListtoFile(size,itemarray, pricearray, quantityarray)
CASE(8)
CALL search(itemarray, ItemSought, Found, Location)
CASE(9)
STOP
END SELECT
END DO
END PROGRAM
Run Code Online (Sandbox Code Playgroud)
有什么建议吗?我真的需要解决这个问题,所以任何帮助都会受到赞赏.非常感谢!!
正如Rook所说,问题在于编译器版本; 不知何故,第一次编译list5的.mod文件是由较旧的编译器生成的.清除所有.o和.mod文件,然后重试,首先编译list5.f90(或者包含模块list5的文件),然后编译主程序.