mirror of https://github.com/mkerrisk/man-pages
94 lines
2.7 KiB
Plaintext
94 lines
2.7 KiB
Plaintext
|
.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
|
||
|
.TH "PERROR" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
|
||
|
.\" perror
|
||
|
.SH NAME
|
||
|
perror \- write error messages to standard error
|
||
|
.SH SYNOPSIS
|
||
|
.LP
|
||
|
\fB#include <stdio.h>
|
||
|
.br
|
||
|
.sp
|
||
|
void perror(const char *\fP\fIs\fP\fB);
|
||
|
.br
|
||
|
\fP
|
||
|
.SH DESCRIPTION
|
||
|
.LP
|
||
|
The \fIperror\fP() function shall map the error number accessed through
|
||
|
the symbol \fIerrno\fP to a language-dependent error
|
||
|
message, which shall be written to the standard error stream as follows:
|
||
|
.IP " *" 3
|
||
|
First (if \fIs\fP is not a null pointer and the character pointed
|
||
|
to by \fIs\fP is not the null byte), the string pointed to
|
||
|
by \fIs\fP followed by a colon and a <space>.
|
||
|
.LP
|
||
|
.IP " *" 3
|
||
|
Then an error message string followed by a <newline>.
|
||
|
.LP
|
||
|
.LP
|
||
|
The contents of the error message strings shall be the same as those
|
||
|
returned by \fIstrerror\fP() with argument \fIerrno\fP.
|
||
|
.LP
|
||
|
The
|
||
|
\fIperror\fP() function shall mark the file associated with the standard
|
||
|
error stream as having been written (\fIst_ctime\fP,
|
||
|
\fIst_mtime\fP marked for update) at some time between its successful
|
||
|
completion and \fIexit\fP(), \fIabort\fP(), or the completion of \fIfflush\fP()
|
||
|
or \fIfclose\fP() on \fIstderr\fP.
|
||
|
.LP
|
||
|
The \fIperror\fP() function shall not change the orientation of the
|
||
|
standard error stream.
|
||
|
.SH RETURN VALUE
|
||
|
.LP
|
||
|
The \fIperror\fP() function shall not return a value.
|
||
|
.SH ERRORS
|
||
|
.LP
|
||
|
No errors are defined.
|
||
|
.LP
|
||
|
\fIThe following sections are informative.\fP
|
||
|
.SH EXAMPLES
|
||
|
.SS Printing an Error Message for a Function
|
||
|
.LP
|
||
|
The following example replaces \fIbufptr\fP with a buffer that is
|
||
|
the necessary size. If an error occurs, the \fIperror\fP()
|
||
|
function prints a message and the program exits.
|
||
|
.sp
|
||
|
.RS
|
||
|
.nf
|
||
|
|
||
|
\fB#include <stdio.h>
|
||
|
#include <stdlib.h>
|
||
|
\&...
|
||
|
char *bufptr;
|
||
|
size_t szbuf;
|
||
|
\&...
|
||
|
if ((bufptr = malloc(szbuf)) == NULL) {
|
||
|
perror("malloc"); exit(2);
|
||
|
}
|
||
|
\&...
|
||
|
\fP
|
||
|
.fi
|
||
|
.RE
|
||
|
.SH APPLICATION USAGE
|
||
|
.LP
|
||
|
None.
|
||
|
.SH RATIONALE
|
||
|
.LP
|
||
|
None.
|
||
|
.SH FUTURE DIRECTIONS
|
||
|
.LP
|
||
|
None.
|
||
|
.SH SEE ALSO
|
||
|
.LP
|
||
|
\fIstrerror\fP() , the Base Definitions volume of IEEE\ Std\ 1003.1-2001,
|
||
|
\fI<stdio.h>\fP
|
||
|
.SH COPYRIGHT
|
||
|
Portions of this text are reprinted and reproduced in electronic form
|
||
|
from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
|
||
|
-- Portable Operating System Interface (POSIX), The Open Group Base
|
||
|
Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
|
||
|
Electrical and Electronics Engineers, Inc and The Open Group. In the
|
||
|
event of any discrepancy between this version and the original IEEE and
|
||
|
The Open Group Standard, the original IEEE and The Open Group Standard
|
||
|
is the referee document. The original Standard can be obtained online at
|
||
|
http://www.opengroup.org/unix/online.html .
|