コード例 #1
0
ファイル: grib_iarray.c プロジェクト: erdc-cm/grib_api
grib_iarray* grib_iarray_push(grib_context* c,grib_iarray* v,long val) {
  size_t start_size=100;
  size_t start_incsize=100;
  if (!v) v=grib_iarray_new(c,start_size,start_incsize);

  if (v->n >= v->size) v=grib_iarray_resize(c,v);
  v->v[v->n]=val;
  v->n++;
  return v;
}
コード例 #2
0
ファイル: grib_iarray.c プロジェクト: 0x1mason/GribApi.XP
grib_iarray* grib_iarray_push(grib_iarray* v,long val)
{
    size_t start_size=100;
    size_t start_incsize=100;

    if (!v) v=grib_iarray_new(0,start_size,start_incsize);

    if (v->n >= v->size-v->number_of_pop_front)
        v=grib_iarray_resize(v);

    v->v[v->n]=val;
    v->n++;
    return v;
}
コード例 #3
0
ファイル: grib_iarray.c プロジェクト: 0x1mason/GribApi.XP
grib_iarray* grib_iarray_push_front(grib_iarray* v,long val)
{
    size_t start_size=100;
    size_t start_incsize=100;
    int i;
    if (!v) v=grib_iarray_new(0,start_size,start_incsize);

    if (v->number_of_pop_front) {
        v->v--;
        v->number_of_pop_front--;
    } else {
        if (v->n >= v->size) v=grib_iarray_resize(v);
        for (i=v->n;i>0;i--) v[i]=v[i-1];
    }
    v->v[0]=val;
    v->n++;

    return v;
}