본문 바로가기
C 언어

perror

by SpeeDr00t 2016. 7. 9.
반응형

void perror(const char *s)

#include <sys/types.h>
#include <sys/uio.h>
#include <unistd.h>
#include <errno.h>
#include <stdio.h>
#include <string.h>
#include <limits.h>

void
perror(const char *s)
{
	struct iovec *v;
	struct iovec iov[4];
	char buf[NL_TEXTMAX];

	v = iov;
	if (s && *s) {
		v->iov_base = (char *)s;
		v->iov_len = strlen(s);
		v++;
		v->iov_base = ": ";
		v->iov_len = 2;
		v++;
	}
	(void)strerror_r(errno, buf, sizeof(buf));
	v->iov_base = buf;
	v->iov_len = strlen(v->iov_base);
	v++;
	v->iov_base = "\n";
	v->iov_len = 1;
	(void)writev(STDERR_FILENO, iov, (v - iov) + 1);
}
반응형

'C 언어' 카테고리의 다른 글

fwrite  (0) 2016.07.09
putchar  (0) 2016.07.09
getchar  (0) 2016.07.09
getc  (0) 2016.07.09
gets  (0) 2016.07.09