⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stdio_details.html

📁 标准c/c++帮助文档
💻 HTML
📖 第 1 页 / 共 2 页
字号:
</H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  void perror( const char *str );</PRE></TD></TR></TABLE><P>  perror()函数打印<I>str</I>(字符串)和一个相应的执行定义的错误消息到全局变量<STRONG>errno</STRONG>中.  </P><HR><H2>   <A NAME="printf">printf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int printf( const char *format, ... );</PRE></TD></TR></TABLE><P>  printf()函数根据<I>format</I>(格式)给出的格式打印输出到STDOUT(标准输出)和其它参数中.</P><P>字符串<I>format</I>(格式)由两类项目组成 - 显示到屏幕上的字符和定义printf()显示的其它参数.   基本上, 你可以指定一个包含文本在内的<I>format</I>(格式)字符串,也可以是映射到printf()其它参数的"特殊"字符.  例如本代码</P><PRE>    char name[20] = "Bob";    int age = 21;    printf( "Hello %s, you are %d years old\n", name, age );</PRE><P>  显示下列输出:</P><PRE>    Hello Bob, you are 21 years old</PRE><P>  %s 表示, "在这里插入首个参数,一个字符串."  %d 表示第二个参数(一个整数)应该放置在那里.  不同的"<I>%-codes</I>"表示不同的变量类型, 也可以限制变量的长度.</P>  <TABLE BGCOLOR="EEEEFF">    <TR><TD><STRONG>Code</STRONG></TD><TD><STRONG>格式</STRONG></TD></TR>    <TR><TD>%c</TD><TD>字符</TD></TR>    <TR><TD>%d</TD><TD>带符号整数</TD></TR>    <TR><TD>%i</TD><TD>带符号整数</TD></TR>    <TR><TD>%e</TD><TD>科学计数法, 使用小写"e"</TD></TR>    <TR><TD>%E</TD><TD>科学计数法, 使用大写"E"</TD></TR>    <TR><TD>%f</TD><TD>浮点数</TD></TR>    <TR><TD>%g</TD><TD>使用%e或%f中较短的一个</TD></TR>    <TR><TD>%G</TD><TD>使用%E或%f中较短的一个</TD></TR>    <TR><TD>%o</TD><TD>八进制</TD></TR>    <TR><TD>%s</TD><TD>一串字符</TD></TR>    <TR><TD>%u</TD><TD>无符号整数</TD></TR>    <TR><TD>%x</TD><TD>无符号十六进制数, 用小写字母</TD></TR>    <TR><TD>%X</TD><TD>无符号十六进制数, 用大写字母</TD></TR>    <TR><TD>%p</TD><TD>一个指针</TD></TR>    <TR><TD>%n</TD><TD>参数应该是一个指向一个整数的指针<BR>  		   指向的是字符数放置的位置<BR>  		   </TD></TR>    <TR><TD>%%</TD><TD>一个'%'符号</TD></TR>  </TABLE><P>  一个位于一个%和格式化命令间的整数担当着一个最小字段宽度说明符,并且加上足够多的空格或0使输出足够长.  如果你想填充0,在最小字段宽度说明符前放置0.  你可以使用一个精度修饰符,它可以根据使用的格式代码而有不同的含义.    <UL>  <LI>用%e, %E和 %f,精度修饰符让你指定想要的小数位数.  例如,</P><PRE>    %12.6f</PRE><P>  将会至少显示12位数字,并带有6位小数的浮点数.  <LI>用%g和 %G, 精度修饰符决定显示的有效数的位数最大值.  <LI>用%s,精度修饰符简单的表示一个<STRONG>最大</STRONG>的最大长度,  以补充句点前的最小字段长度.  </UL>  所有的printf()的输出都是右对齐的,除非你在%符号后放置了负号.  例如,</P><PRE>    %-12.4f</PRE><P>  将会显示12位字符,4位小数位的浮点数并且左对齐.  你可以修改带字母<STRONG>l</STRONG>和<STRONG>h</STRONG>%d, %i, %o, %u和 %x 等类型说明符指定长型和短型数据类型  (例如 %hd 表示一个短整数).  %e, %f和 %g 类型说明符,可以在它们前面放置<STRONG>l</STRONG>指出跟随的是一个double.  %g, %f和 %e 类型说明符可以置于字符'#'前保证出现小数点, 即使没有小数位.    带%x类型说明符的'#'字符的使用, 表示显示十六进制数时应该带'0x'前缀.  带%o类型说明符的'#'字符的使用, 表示显示八进制数时应该带一个'0'前缀.</P><P>  你可以在输出字符串中包含 <A HREF="escape_sequences.html">连续的Escape序列</A>.</P><P>  printf()的返回值是打印的字符数,如果发生错误则返回一个负值.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#scanf">scanf()</A>和 <A HREF="#fprintf">fprintf()</A>.  </STRONG><HR><H2>   <A NAME="putc">putc</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int putc( int ch, FILE *stream );</PRE></TD></TR></TABLE><P>  putc()函数把字符<I>ch</I>写到<I>stream</I>(流)中.  返回值是写入的字符, 发生错误时返回EOF.  例如:</P><PRE>    char ch;    FILE *input;    input = fopen( "temp.cpp", "r" );    ch = getc( input );    while( ch != EOF ) {      printf( "%c", ch );      ch = getc( input );    }</PRE><P>  显示"temp.cpp"的内容到屏幕.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#fgetc">fgetc()</A>, <A HREF="#fputc">fputc()</A>,  <A HREF="#getchar">getchar()</A>和 <A HREF="#putchar">putchar()</A>.  </STRONG><HR><H2>   <A NAME="putchar">putchar</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int putchar( int ch );</PRE></TD></TR></TABLE><P>  putchar()函数把<I>ch</I>写到<STRONG>STDOUT(标准输出)</STRONG>.  代码</P><PRE>    putchar( ch );</PRE><P></P><PRE>    putc( ch, STDOUT );</PRE>一样.<P>  putchar()的返回值是被写的字符, 发生错误时返回EOF.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#putc">putc()</A>  </STRONG><HR><H2>   <A NAME="puts">puts</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int puts( char *str );</PRE></TD></TR></TABLE><P> 函数puts()把<I>str</I>(字符串)写到<STRONG>STDOUT(标准输出)</STRONG>上.  puts() 成功时返回非负值, 失败时返回EOF.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#putc">putc()</A>, <A HREF="#gets">gets()</A>和  <A HREF="#printf">printf()</A>.  </STRONG><HR><H2>   <A NAME="remove">remove</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int remove( const char *fname );</PRE></TD></TR></TABLE><P>  remove()函数删除由<I>fname</I>(文件名)指定的文件.  remove()成功时返回0,如果发生错误返回非零.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#rename">rename()</A>  </STRONG><HR><H2>   <A NAME="rename">rename</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int rename( const char *oldfname, const char *newfname );</PRE></TD></TR></TABLE><P> 函数rename()更改文件<I>oldfname</I>的名称为<I>newfname</I>.  rename()成功时返回0,错误时返回非零.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#remove">remove()</A>  </STRONG><HR><H2>   <A NAME="rewind">rewind</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  void rewind( FILE *stream );</PRE></TD></TR></TABLE><P> 函数rewind()把文件指针移到由<I>stream</I>(流)指定的开始处, 同时清除和流相关的错误和EOF标记.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#fseek">fseek()</A>  </STRONG><HR><H2>   <A NAME="scanf">scanf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int scanf( const char *format, ... );</PRE></TD></TR></TABLE><P>  scanf()函数根据由<I>format</I>(格式)指定的格式从<STRONG>stdin</STRONG>(标准输入)读取,并保存数据到其它参数.  它和<A HREF="#printf">printf()</A>有点类似.  <I>format</I>(格式)字符串由控制字符,空白字符和非空白字符组成.  控制字符以一个%符号开始,如下:</P>  <TABLE BGCOLOR="EEEEFF">  <TR><TD><STRONG>控制字符</STRONG></TD><TD><STRONG>说明</STRONG></TD></TR>  <TR><TD>%c</TD><TD>一个单一的字符</TD></TR>  <TR><TD>%d</TD><TD>一个十进制整数</TD></TR>  <TR><TD>%i</TD><TD>一个整数</TD></TR>  <TR><TD>%e, %f, %g</TD><TD>一个浮点数</TD></TR>  <TR><TD>%o</TD><TD>一个八进制数</TD></TR>  <TR><TD>%s</TD><TD>一个字符串</TD></TR>  <TR><TD>%x</TD><TD>一个十六进制数</TD></TR>  <TR><TD>%p</TD><TD>一个指针</TD></TR>  <TR><TD>%n</TD><TD>一个等于读取字符数量的整数</TD></TR>  <TR><TD>%u</TD><TD>一个无符号整数</TD></TR>  <TR><TD>%[]</TD><TD>一个字符集</TD></TR>  <TR><TD>%%</TD><TD>一个精度符号</TD></TR>  </TABLE><P>  scanf()读取匹配<I>format</I>(格式)字符串的输入. 当读取到一个控制字符, 它把值放置到下一个变量.  空白(tabs, 空格等等)会跳过.  非空白字符和输入匹配, 然后丢弃.  如果是一个在%符号和控制符间的数量, 那么只有指定数量的字符转换到变量中.  如果scanf()遇到一个字符集(用%[]控制字符表示), 那么在括号中的任意字符都会读取到变量中.  scanf()的返回值是成功赋值的变量数量, 发生错误时返回EOF.</P><I>相关主题:</I><BR><STRONG>  <A HREF="#printf">printf()</A>和 <A HREF="#fscanf">fscanf()</A>.  </STRONG><HR><H2>   <A NAME="setbuf">setbuf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  void setbuf( FILE *stream, char *buffer );</PRE></TD></TR></TABLE><P>  setbuf()函数设置<I>stream</I>(流)使用<I>buffer</I>(缓冲区),如果<I>buffer</I>(缓冲区)是null,关闭缓冲.  如果使用非标准缓冲尺寸, 它应该由<STRONG>BUFSIZ</STRONG>字符决定长度.</P><I>相关主题:</I><BR><STRONG><A HREF="#fopen">fopen()</A>, <A HREF="#fclose">fclose()</A>, <A HREF="#setvbuf">setvbuf()</A>,   </STRONG><HR><H2>   <A NAME="setvbuf">setvbuf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int setvbuf( FILE *stream, char *buffer, int mode, size_t size );</PRE></TD></TR></TABLE><P> 函数setvbuf()设置用于<I>stream</I>(流)的缓冲区到<I>buffer</I>(缓冲区),其大小为<I>size</I>(大小).  <I>mode</I>(方式)可以是:  <UL>  <LI>_IOFBF, 表示完全缓冲  <LI>_IOLBF, 表示线缓冲  <LI>_IONBF, 表示无缓存  </UL></P><I>相关主题:</I><BR><STRONG><A HREF="#setbuf">setbuf()</A>,   </STRONG><HR><H2>   <A NAME="sprintf">sprintf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int sprintf( char *buffer, const char *format, ... );</PRE></TD></TR></TABLE><P>  sprintf()函数和<A HREF="#printf">printf()</A>类似, 只是把输出发送到<I>buffer</I>(缓冲区)中.返回值是写入的字符数量.  例如:</P><PRE>    char string[50];    int file_number = 0;        sprintf( string, "file.%d", file_number );    file_number++;    output_file = fopen( string, "w" );</PRE><I>相关主题:</I><BR><STRONG><A HREF="#printf">printf()</A>, <A HREF="#fsprintf">fsprintf()</A>,   </STRONG><HR><H2>   <A NAME="sscanf">sscanf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int sscanf( const char *buffer, const char *format, ... );</PRE></TD></TR></TABLE><P> 函数sscanf()和<A HREF="#scanf">scanf()</A>类似, 只是输入从<I>buffer</I>(缓冲区)中读取.</P><I>相关主题:</I><BR><STRONG><A HREF="#scanf">scanf()</A>, <A HREF="#fscanf">fscanf()</A>,   </STRONG><HR><H2>   <A NAME="tmpfile">tmpfile</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  FILE *tmpfile( void );</PRE></TD></TR></TABLE><P> 函数tempfile()用一个独特的文件名打开一个临时文件,并返回一个到该文件的指针.如果发生错误则返回null.</P><I>相关主题:</I><BR><STRONG><A HREF="#tmpnam">tmpnam()</A>,   </STRONG><HR><H2>   <A NAME="tmpnam">tmpnam</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  char *tmpnam( char *name );</PRE></TD></TR></TABLE><P>  tmpnam()函数创建一个独特的文件名并保存在<I>name</I>中.  tmpnam()最多可以调用<STRONG>TMP_MAX</STRONG>指定的次数.</P><I>相关主题:</I><BR><STRONG><A HREF="#tmpfile">tmpfile()</A>,   </STRONG><HR><H2>   <A NAME="ungetc">ungetc</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdio.h&gt;  int ungetc( int ch, FILE *stream );</PRE></TD></TR></TABLE><P> 函数ungetc()把字符<I>ch</I>放回到<I>stream</I>(流)中.</P><I>相关主题:</I><BR><STRONG><A HREF="#getc">getc()</A>,   </STRONG><HR><H2>   <A NAME="vprintf">vprintf, vfprintf和 vsprintf</A></H2><I>语法:</I><TABLE BGCOLOR="CCCCFF"><TR><TD><PRE>  #include &lt;stdarg.h&gt;  #include &lt;stdio.h&gt;  int vprintf( char *format, va_list arg_ptr );  int vfprintf( FILE *stream, const char *format, va_list arg_ptr );  int vsprintf( char *buffer, char *format, va_list arg_ptr );</PRE></TD></TR></TABLE><P>  这些函数和<A HREF="#printf">printf()</A>非常相似,   <A HREF="#fprintf">fprintf()</A>和 <A HREF="#sprintf">sprintf()</A>的不同在于参数列表是一个指向一系列参数的指针.  <STRONG>va_list</STRONG>在STDARG.H中定义,并且也可以被<A HREF="stdother_details.html#va_arg">va_arg()</A>使用.  例如:</P><PRE>    void error( char *fmt, ... ) {      va_list args;            va_start( args, fmt );      fprintf( stderr, "Error: " );      vfprintf( stderr, fmt, args );      fprintf( stderr, "\n" );      va_end( args );      exit( 1 );    }</PRE></BODY></HTML><br><html>
  <head>
    <meta http-equiv='Content-Type' content='text/html' charset='ISO_8859_1'>
    <title>195</title>
  <style>
  <!--
div#StrBanner /* Creates Nonscrolling banner region */
	{
	position: relative;
	left: 0px;
	padding: 0px 0px 0px 0px;
	border-bottom: 1px solid #999999;
	background-color: #99ccff;
	}
div#titlerow /* <!-- 195 --> */
	{
	padding: 0px 10px 0px 22px; 
	}
h1, h2, h3, h4 /* <!-- 195 --> */
	{
	font-family: Verdana, Arial, Helvetica, sans-serif;
	margin-bottom: .4em; 
	margin-top: 0em;
	font-weight: bold;
	}
	--> 
  </style>          
   </head>
   <body><!-- 195 -->
      <div id='StrBanner'>
         <div>
            <table class='TableBanner' cellspacing='0'>
               <tr>
                  <td ALIGN=RIGHT><!-- 195 --></td>
                  <td ALIGN=RIGHT><!-- 195 --></td> </tr>
            </table>
         </div>
         <div id='TitleRow'>
            <h3>Extr<!-- 195 -->acted by <!-- 195 -->Tria<!-- 195 -->l version of Ch<!-- 195 -->mDecom<!-- 195 -->piler<!-- 195 --> (<a href="http://www.etextwizard.com/download/cd/cdsetup.exe" target=_blank>Download Now</a>).</h3>   
            <h4>Once reg<!-- 195 -->istered, <!-- 195 -->all restrictions of the Tr<!-- 195 -->ial version are removed.</h4> 
            <a href="http://www.zipghost.com/order_chmdecompiler.html" target=_blank><H3>B<!-- 195 -->uy Now</H3></a>        
         </div>
      </div>
      <p><!-- 195 -->
      </p>
  </body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -