Ejemplo n.º 1
0
/* add an element to the vector */
void Vector_add(Vector* vector, void* elem) {
  void* target;

  if (vector) {
    if (vector->size == vector->capacity) Vector_grow(vector);

    /* target will point to the next empty space in the vector */
    target = (char*) vector->base + vector->elem_size * vector->size++;
    /* copy the data in */
    memcpy(target, elem, vector->elem_size);
  }
}
Ejemplo n.º 2
0
int Vector_add(Vector v, char* p)
{

  /* grow the vector if necessary */

  if (v->size>=v->allocated)
    {
      if (Vector_grow(v)<0)
	return -1;
    }

  v->v[v->size]=p;

  v->size++;

  return 0;
}