This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hi Angela, > Is something wrong with my start/count? I get -101 returned from > nc_put_vara. Nothing is wrong with your start/count, but address for the start of the data array that you provided is wrong. Instead of (const void *)&data[0] which would be OK for a one-dimensional data array, use &data[0][0] because you have declared data to be a 2-dimensional array. It also works if you just use data as the argument, because in C for a 2D array, that's the same as &data[0][0]. Your statement > ret = nc_put_vara(gid,varid,(const size_t *)start,(const size_t > *)count,(const void *)&data[0]); could be simplified to ret = nc_put_vara(gid,varid, start, count, data); if you declared start and count to be of type size_t instead of int: size_t start[2]={0,0}; size_t count[2]={1,3}; --Russ > Thanks, > Angela Sigmund > > ******************************************************* > #include <stdio.h> > #include <stdlib.h> > #include <string.h> > > #include <netcdf.h> > > int main(void){ > > int ret,ncid,gid; > int dimids[2]; > int data[2][3]={1,2,3,4,5,6}; > int varid; > int start[2]={0,0}; > int count[2]={1,3}; > > ret = nc_create("/home/asigmund/data/test.nc", NC_NETCDF4, &ncid); > ret=nc_def_grp(ncid, "group1",&gid); > ret=nc_def_dim(ncid,"x",2,&dimids[0]); > ret=nc_def_dim(ncid,"y",3,&dimids[1]); > ret=nc_def_var(gid,"data",NC_INT,2,dimids,&varid); > ret = nc_enddef(ncid); > > ret = nc_put_vara(gid,varid,(const size_t *)start,(const size_t > *)count,(const void *)&data[0]); > if (ret!=0) printf("%d\n",ret); > > ret= nc_close(ncid); > > } > > > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. > > Russ Rew UCAR Unidata Program address@hidden http://www.unidata.ucar.edu Ticket Details =================== Ticket ID: FQF-733069 Department: Support netCDF Priority: Normal Status: Closed