1<html lang="en"> 2<head> 3<title>fputc - Untitled</title> 4<meta http-equiv="Content-Type" content="text/html"> 5<meta name="description" content="Untitled"> 6<meta name="generator" content="makeinfo 4.13"> 7<link title="Top" rel="start" href="index.html#Top"> 8<link rel="up" href="Stdio.html#Stdio" title="Stdio"> 9<link rel="prev" href="fpurge.html#fpurge" title="fpurge"> 10<link rel="next" href="fputs.html#fputs" title="fputs"> 11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> 12<meta http-equiv="Content-Style-Type" content="text/css"> 13<style type="text/css"><!-- 14 pre.display { font-family:inherit } 15 pre.format { font-family:inherit } 16 pre.smalldisplay { font-family:inherit; font-size:smaller } 17 pre.smallformat { font-family:inherit; font-size:smaller } 18 pre.smallexample { font-size:smaller } 19 pre.smalllisp { font-size:smaller } 20 span.sc { font-variant:small-caps } 21 span.roman { font-family:serif; font-weight:normal; } 22 span.sansserif { font-family:sans-serif; font-weight:normal; } 23--></style> 24<link rel="stylesheet" type="text/css" href="../cs.css"> 25</head> 26<body> 27<div class="node"> 28<a name="fputc"></a> 29<p> 30Next: <a rel="next" accesskey="n" href="fputs.html#fputs">fputs</a>, 31Previous: <a rel="previous" accesskey="p" href="fpurge.html#fpurge">fpurge</a>, 32Up: <a rel="up" accesskey="u" href="Stdio.html#Stdio">Stdio</a> 33<hr> 34</div> 35 36<h3 class="section">4.20 <code>fputc</code>—write a character on a stream or file</h3> 37 38<p><a name="index-fputc-184"></a><a name="index-g_t_005ffputc_005fr-185"></a><strong>Synopsis</strong> 39<pre class="example"> #include <stdio.h> 40 int fputc(int <var>ch</var>, FILE *<var>fp</var>); 41 42 #include <stdio.h> 43 int _fputc_r(struct _rent *<var>ptr</var>, int <var>ch</var>, FILE *<var>fp</var>); 44 45</pre> 46 <p><strong>Description</strong><br> 47<code>fputc</code> converts the argument <var>ch</var> from an <code>int</code> to an 48<code>unsigned char</code>, then writes it to the file or stream identified by 49<var>fp</var>. 50 51 <p>If the file was opened with append mode (or if the stream cannot 52support positioning), then the new character goes at the end of the 53file or stream. Otherwise, the new character is written at the 54current value of the position indicator, and the position indicator 55oadvances by one. 56 57 <p>For a macro version of this function, see <code>putc</code>. 58 59 <p>The <code>_fputc_r</code> function is simply a reentrant version of <code>fputc</code> 60that takes an additional reentrant structure argument: <var>ptr</var>. 61 62 <p><br> 63<strong>Returns</strong><br> 64If successful, <code>fputc</code> returns its argument <var>ch</var>. If an error 65intervenes, the result is <code>EOF</code>. You can use `<code>ferror(</code><var>fp</var><code>)</code>' to 66query for errors. 67 68 <p><br> 69<strong>Portability</strong><br> 70<code>fputc</code> is required by ANSI C. 71 72 <p>Supporting OS subroutines required: <code>close</code>, <code>fstat</code>, <code>isatty</code>, 73<code>lseek</code>, <code>read</code>, <code>sbrk</code>, <code>write</code>. 74 75 <p><br> 76 77 </body></html> 78 79