我无法理解我的fortran子程序(2003标准)正在进行的读取netCDF-4数据的问题。我正在使用的编译器是gfortran。
我必须读取netCDF文件中的32位整数,读取文件a将可分配变量声明为整数(KIND = 4)。但是,如果我这样做,netCDF变量未正确存储(只保存0个值)。
相反,如果我将变量声明为整数(KIND = 8)或双倍,则变量被正确存储(当然,它使用双精度存储为read)。
为什么我不能将相应的KIND用于32位变量?
我可以简单地做到这一点并忽略这个问题,但如果我不了解发生了什么,我担心我会对其他变量做错。
有什么想法吗?
谢谢!