first commit
This commit is contained in:
74
extern/stdcxx/4.2.1/doc/stdlibug/28-1.html
vendored
Normal file
74
extern/stdcxx/4.2.1/doc/stdlibug/28-1.html
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed
|
||||
with this work for additional information regarding copyright
|
||||
ownership. The ASF licenses this file to you under the Apache
|
||||
License, Version 2.0 (the License); you may not use this file
|
||||
except in compliance with the License. You may obtain a copy of
|
||||
the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied. See the License for the specific language governing
|
||||
permissions and limitations under the License.
|
||||
|
||||
Copyright 1999-2007 Rogue Wave Software, Inc.
|
||||
-->
|
||||
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>The Predefined Streams</TITLE>
|
||||
<LINK REL=StyleSheet HREF="../rw.css" TYPE="text/css" TITLE="Apache stdcxx Stylesheet"></HEAD>
|
||||
<BODY BGCOLOR=#FFFFFF>
|
||||
<A HREF="28.html"><IMG SRC="images/bprev.gif" WIDTH=20 HEIGHT=21 ALT="Previous file" BORDER=O></A><A HREF="noframes.html"><IMG SRC="images/btop.gif" WIDTH=56 HEIGHT=21 ALT="Top of Document" BORDER=O></A><A HREF="booktoc.html"><IMG SRC="images/btoc.gif" WIDTH=56 HEIGHT=21 ALT="Contents" BORDER=O></A><A HREF="tindex.html"><IMG SRC="images/bindex.gif" WIDTH=56 HEIGHT=21 ALT="Index page" BORDER=O></A><A HREF="28-2.html"><IMG SRC="images/bnext.gif" WIDTH=25 HEIGHT=21 ALT="Next file" BORDER=O></A><DIV CLASS="DOCUMENTNAME"><B>Apache C++ Standard Library User's Guide</B></DIV>
|
||||
<H2>28.1 The Predefined Streams</H2>
|
||||
<A NAME="idx692"><!></A>
|
||||
<A NAME="idx693"><!></A>
|
||||
<P>There are eight predefined standard stream objects that are automatically created and initialized at program startup if the header <SAMP><iostream></SAMP> is included. These standard stream objects are associated with the C standard files <SAMP>stdin</SAMP>, <SAMP>stdout</SAMP>, and <SAMP>stderr</SAMP>, as shown in <A HREF="28-1.html#Table 26">Table 26</A>: </P>
|
||||
<A NAME="idx694"><!></A>
|
||||
<H4><A NAME="Table 26">Table 26: Predefined standard streams with their associated C standard files</A></H4>
|
||||
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="3">
|
||||
<tr><td valign=top><B>Narrow character<br> stream</B>
|
||||
</td><td valign=top><B>Wide character<br> stream</B>
|
||||
</td><td valign=top><B>Associated C standard<br> files</B>
|
||||
</td></tr>
|
||||
<tr><td valign=top><P CLASS="TABLE"><SAMP>cin</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>wcin</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>stdin</SAMP></P>
|
||||
</td></tr>
|
||||
<tr><td valign=top><P CLASS="TABLE"><SAMP>cout</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>wcout</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>stdout</SAMP></P>
|
||||
</td></tr>
|
||||
<tr><td valign=top><P CLASS="TABLE"><SAMP>cerr</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>wcerr</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>stderr</SAMP></P>
|
||||
</td></tr>
|
||||
<tr><td valign=top><P CLASS="TABLE"><SAMP>clog</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>wclog</SAMP></P>
|
||||
</td><td valign=top><P CLASS="TABLE"><SAMP>stderr</SAMP></P>
|
||||
</td></tr>
|
||||
</TABLE>
|
||||
<P>Like the C standard files, these stream objects are all associated by default with the terminal.</P>
|
||||
<P>The difference between <SAMP>clog</SAMP> and <SAMP>cerr</SAMP> is that <SAMP>clog</SAMP> is fully buffered, whereas output to <SAMP>cerr</SAMP> is written to the external device after each formatting. With a fully buffered stream, output to the actual external device is written only when the buffer is full. Thus <SAMP>clog</SAMP> is more efficient for redirecting output to a file, while <SAMP>cerr</SAMP> is mainly useful for terminal I/O. Writing to the external device after every formatting, to the terminal in the case of <SAMP>cerr</SAMP>, serves the purpose of synchronizing output to and input from the terminal. Also, the predefined streams are synchronized with their associated C standard files. See <A HREF="35-6.html">Section 35.6</A> for details. </P>
|
||||
<P>The standard stream objects are initialized in such a way that they can be used even in constructors and destructors of non-local objects with static storage duration. However, care must be taken to always include the header <SAMP><iostream></SAMP> prior to the definition of any such object.</P>
|
||||
<P>Since the initialization of the standard iostream objects is a fairly resource-intensive operation it is not advisable to include the header <SAMP><iostream></SAMP> just as a convenience to gain access to either or both of <SAMP>basic_istream</SAMP> and <SAMP>basic_ostream</SAMP> in translation units that do not refer to the objects. In such cases, include the headers <SAMP><istream></SAMP> and <SAMP><ostream></SAMP> instead.</P>
|
||||
|
||||
<BR>
|
||||
<HR>
|
||||
<A HREF="28.html"><IMG SRC="images/bprev.gif" WIDTH=20 HEIGHT=21 ALT="Previous file" BORDER=O></A><A HREF="noframes.html"><IMG SRC="images/btop.gif" WIDTH=56 HEIGHT=21 ALT="Top of Document" BORDER=O></A><A HREF="booktoc.html"><IMG SRC="images/btoc.gif" WIDTH=56 HEIGHT=21 ALT="Contents" BORDER=O></A><A HREF="tindex.html"><IMG SRC="images/bindex.gif" WIDTH=56 HEIGHT=21 ALT="Index page" BORDER=O></A><A HREF="28-2.html"><IMG SRC="images/bnext.gif" WIDTH=20 HEIGHT=21 ALT="Next file" BORDER=O></A>
|
||||
|
||||
<!-- Google Analytics tracking code -->
|
||||
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
_uacct = "UA-1775151-1";
|
||||
urchinTracker();
|
||||
</script>
|
||||
<!-- end of Google Analytics tracking code -->
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
||||
Reference in New Issue
Block a user