shithub: qk1

ref: 9d7854adca6f7c7bd9f83173e3ac4b0842b2aca1
dir: /unix/seprint.c/

View raw version
#include <stdio.h>
#include <stdarg.h>

char *
seprint(char *buf, char *e, char *fmt, ...)
{
	va_list a;
	int n, m;

	if(e <= buf)
		return e;

	va_start(a, fmt);
	m = e-buf-1;
	n = vsnprintf(buf, m, fmt, a);
	va_end(a);

	return buf + (n < m ? n : m);
}