使用c语言读写netcdf文件,[原][c][netcdf]读取函数
EXTERNL intnc_open(const char *path, int mode, int *ncidp);
打開nc文件的函數(shù)接口
這里注意:返回值 ncidp? ? ?這個是后面所有讀取函數(shù)的傳入?yún)?shù)。相當(dāng)于文件句柄
就是后面經(jīng)常填寫的參數(shù)“ncid”
打開對應(yīng)有一個關(guān)閉函數(shù):
EXTERNL intnc_close(int ncid);
調(diào)用的句柄就是? ?ncidp
獲取要讀取的變量句柄:
EXTERNL intnc_inq_varid(int ncid, const char *name, int *varidp);
這里name填入的就是要讀取字段的名稱,例如“ccl”或者“l(fā)at”等
返回值??varidp? ?就是這個變量的ID,或者叫遍歷句柄。
這個值就是后面讀取時經(jīng)常填入的參數(shù)“varid”
下面是讀取多維數(shù)據(jù)的函數(shù):
1.讀取一個值:
/*Read one value.*/EXTERNLintnc_get_var1(int ncid, int varid, const size_t *indexp, void *ip);
前兩個參數(shù)通過之前的函數(shù)獲取,
indexp這個是維度的定位坐標(biāo),比如
indexp[4]={0,0,0,0} 這個就是一個思維的起始點time\level\lat\lon
又或者
indexp[2] = {20,30}? 這個是2維中索引在20,30位置上的點
ip就是取出的這一個值的地址。
2.讀取多個值
EXTERNL intnc_get_vara_double(int ncid, int varid, const size_t *startp,const size_t *startp, double *ip);
讀取的起始位置:startp
讀取的數(shù)量:startp
原文:https://www.cnblogs.com/lyggqm/p/12926146.html
總結(jié)
以上是生活随笔為你收集整理的使用c语言读写netcdf文件,[原][c][netcdf]读取函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 发送前台广播,使用Int
- 下一篇: android 购物车小美的店,[转载]