Files
lab6_list/util.c

48 lines
556 B
C
Raw Permalink Normal View History

2022-04-23 01:35:06 +03:00
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
void *
xmalloc(size_t sz)
{
void *res;
res = malloc(sz);
if (sz != 0 && res == NULL) {
perror("malloc()");
exit(EXIT_FAILURE);
}
return res;
}
void*
xrealloc(void *ptr, size_t size)
{
void *res;
res = realloc(ptr, size);
if (size != 0 && res == NULL) {
perror("realloc()");
exit(EXIT_FAILURE);
}
return res;
}
void
xfree(void *ptr)
{
if (ptr)
free(ptr);
}
void
xerror(int rc, char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
vfprintf(stderr, fmt, ap);
exit(rc);
}