Some fill values defined in fortran include file netcdf.inc differ from those in C include file netcdf.h netcdf.inc: parameter(FILBYTE = 128) parameter(FILSHORT = 32768) parameter(FILLONG = -2147483648) netcdf.h: #define FILL_BYTE ((char)-127) /* Largest Negative value */ #define FILL_SHORT ((short)-32767) #define FILL_LONG ((long)-2147483647) The values in netcdf.h appear to be correct. All three values in netcdf.inc are silly. The max. value for a byte is 127, while the max for a short is 32767. Thus the values for FILBYTE & FILSHORT are impossible! The min. for a long is -2147483648, but some software has trouble with this number because its magnitude exceeds that of the max. 2147483647. So it is safer to use -2147483647 as FILLONG.