示例#1
0
void *v_pstr (Vector vec, char *data)
{
	if (vec->len >= vec->mlen)
	{
		vec->mlen = V_NEXT_LENGTH(vec->mlen);
		vec->data = realloc (vec->data, vec->mlen * vec->siz);
	}
	memcpy (DATA(vec->len), data, strlen (data) + 1);
	++ vec->len;
	return v_at (vec, vec->len - 1);
}
示例#2
0
void *v_push (Vector vec, void *data)
{
	if (vec->data == NULL)
		panic("NULL vector");
	if (vec->len >= vec->mlen)
	{
		vec->mlen = V_NEXT_LENGTH(vec->mlen);
		vec->data = realloc (vec->data, vec->mlen * vec->siz);
	}
	memcpy (DATA(vec->len), data, vec->siz);
	++ vec->len;
	return v_at (vec, vec->len - 1);
}