File: tst_vlen_demo.c

package info (click to toggle)
netcdf-parallel 1%3A4.6.2-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 101,668 kB
  • sloc: ansic: 200,241; sh: 10,807; yacc: 2,522; makefile: 1,306; lex: 1,153; xml: 173; awk: 2
file content (26 lines) | stat: -rw-r--r-- 717 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdlib.h>
#include "netcdf.h"

int
main(void)
{
   int ncid, typeid, varid;
   float missing_value = -999.0;
   nc_vlen_t missing_val;

   if(nc_create("tst_vlen_data.nc", NC_CLOBBER | NC_NETCDF4, &ncid)) abort();

   /* Create a vlen type. */
   if (nc_def_vlen(ncid, "row_of_floats", NC_FLOAT, &typeid)) abort();;

   /* Declare a scalar variable of the vlen type */
   if (nc_def_var(ncid, "ragged_array", typeid, 0, NULL, &varid)) abort();;

   /* Create and write a variable attribute of the vlen type */
   missing_val.p = &missing_value;
   missing_val.len = 1;
   if (nc_put_att(ncid, varid, "_FillValue", typeid, 1, (void *) &missing_val)) abort();;

   if (nc_close(ncid)) abort();;
   exit(0);
}