summaryrefslogtreecommitdiff
path: root/man3p/getc.3p
diff options
context:
space:
mode:
Diffstat (limited to 'man3p/getc.3p')
-rw-r--r--man3p/getc.3p64
1 files changed, 64 insertions, 0 deletions
diff --git a/man3p/getc.3p b/man3p/getc.3p
new file mode 100644
index 000000000..c745c4548
--- /dev/null
+++ b/man3p/getc.3p
@@ -0,0 +1,64 @@
+.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
+.TH "GETC" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
+.\" getc
+.SH NAME
+getc \- get a byte from a stream
+.SH SYNOPSIS
+.LP
+\fB#include <stdio.h>
+.br
+.sp
+int getc(FILE *\fP\fIstream\fP\fB);
+.br
+\fP
+.SH DESCRIPTION
+.LP
+The \fIgetc\fP() function shall be equivalent to \fIfgetc\fP() , except
+that if it is implemented as
+a macro it may evaluate \fIstream\fP more than once, so the argument
+should never be an expression with side effects.
+.SH RETURN VALUE
+.LP
+Refer to \fIfgetc\fP() .
+.SH ERRORS
+.LP
+Refer to \fIfgetc\fP() .
+.LP
+\fIThe following sections are informative.\fP
+.SH EXAMPLES
+.LP
+None.
+.SH APPLICATION USAGE
+.LP
+If the integer value returned by \fIgetc\fP() is stored into a variable
+of type \fBchar\fP and then compared against the
+integer constant EOF, the comparison may never succeed, because sign-extension
+of a variable of type \fBchar\fP on widening to
+integer is implementation-defined.
+.LP
+Since it may be implemented as a macro, \fIgetc\fP() may treat incorrectly
+a \fIstream\fP argument with side effects. In
+particular, \fIgetc\fP(*\fIf\fP++) does not necessarily work as expected.
+Therefore, use of this function should be preceded by
+\fB"#undef getc"\fP in such situations; \fIfgetc\fP() could also be
+used.
+.SH RATIONALE
+.LP
+None.
+.SH FUTURE DIRECTIONS
+.LP
+None.
+.SH SEE ALSO
+.LP
+\fIfgetc\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 .