ex_netstr.c
#define VSTR_COMPILE_INCLUDE 1
#include <vstr.h>
int main(int argc, char *argv[])
{
Vstr_base *s1 = NULL;
unsigned int scan = 1;
unsigned int ns_tot = 0;
if (!vstr_init()) abort();
if (!(s1 = vstr_make_base(NULL))) abort();
ns_tot = vstr_add_netstr_beg(s1, s1->len);
while (scan < (unsigned)argc)
{
unsigned int ns = vstr_add_netstr_beg(s1, s1->len);
vstr_add_cstr_ptr(s1, s1->len, argv[scan]);
vstr_add_netstr_end(s1, ns, s1->len);
++scan;
}
vstr_add_netstr_end(s1, ns_tot, s1->len);
vstr_add_cstr_ptr(s1, s1->len, "\n");
if (s1->conf->malloc_bad)
exit (EXIT_FAILURE);
while (s1->len && vstr_sc_write_fd(s1, 1, s1->len, 1, NULL))
{ }
vstr_exit();
exit (EXIT_SUCCESS);
}