30 Function nf_inq_libvers() RESULT(vermsg)
34 USE netcdf_nc_interfaces
38 Character(LEN=80) :: vermsg
40 Character(LEN=81),
Pointer :: fstrptr
41 TYPE(c_ptr) :: cstrptr
42 Integer :: inull, ilen
44 vermsg = repeat(
" ", len(vermsg))
59 Call c_f_pointer(cstrptr, fstrptr)
64 ilen = len_trim(fstrptr)
65 inull = scan(fstrptr,c_null_char)
66 If (inull /= 0) ilen = inull-1
67 ilen = max(1, min(ilen,80))
71 vermsg(1:ilen) = fstrptr(1:ilen)
73 End Function nf_inq_libvers
75 Function nf_strerror(ncerr) RESULT(errmsg)
79 USE netcdf_nc_interfaces
83 Integer(KIND=C_INT),
Intent(IN) :: ncerr
85 Character(LEN=80) :: errmsg
87 Character(LEN=81),
Pointer :: fstrptr
88 TYPE(c_ptr) :: cstrptr
89 Integer :: inull, ilen
90 Integer(KIND=C_INT) :: cncerr
92 errmsg = repeat(
" ", len(errmsg))
107 Call c_f_pointer(cstrptr, fstrptr)
112 ilen = len_trim(fstrptr)
113 inull = scan(fstrptr,c_null_char)
114 If (inull /= 0) ilen = inull-1
115 ilen = max(1, min(ilen,80))
119 errmsg(1:ilen) = fstrptr(1:ilen)
121 End Function nf_strerror
123 Function nf_issyserr(nerr) RESULT(status)
127 Integer,
Intent(IN) :: nerr
133 End Function nf_issyserr
Begin explicit interfaces for base nc_ functions.