-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathall.html
More file actions
304 lines (250 loc) · 8.32 KB
/
all.html
File metadata and controls
304 lines (250 loc) · 8.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<!-- Mirrored from cppreference.com/cppsstream/all.html by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 22 Jan 2008 06:25:44 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=iso-8859-1"><!-- /Added by HTTrack -->
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 1 September 2005), see www.w3.org">
<title>C++ String Streams</title>
<link href="../cppreference.css" rel="stylesheet" type="text/css">
<link href="../prettify.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="../prettify.js"></script>
</head>
<body onload="prettyPrint()">
<table>
<tr>
<td>
<div class="body-content">
<div class="header-box">
<a href="../index-2.html">cppreference.com</a> > <a href=
"index.html">C++ String Streams</a>
</div>
<div class="name-format">
String Stream Constructors
</div>
<div class="syntax-name-format">
Syntax:
</div>
<pre class="syntax-box">
#include <sstream>
stringstream()
stringstream( openmode mode )
stringstream( string s, openmode mode )
ostringstream()
ostringstream( openmode mode )
ostringstream( string s, openmode mode )
istringstream()
istringstream( openmode mode )
istringstream( string s, openmode mode )
</pre>
<p>The stringstream, ostringstream, and istringstream objects are
used for input and output to a string. They behave in a manner
similar to fstream, ofstream and ifstream objects.</p>
<p>The optional <em>mode</em> parameter defines how the file is to
be opened, according to the <a href="../io_flags.html#mode_flags">io
stream mode flags</a>.<p>
<p>An ostringstream object can be used to write to a string. This
is similar to the C <a
href="http://www.cppreference.com/stdio/sprintf.html">sprintf()</a>
function. For example:</p>
<pre class="prettyprint">
ostringstream s1;
int i = 22;
s1 << "Hello " << i << endl;
string s2 = s1.str();
cout << s2;
</pre>
<p>An istringstream object can be used to read from a string. This
is similar to the C <a
href="http://www.cppreference.com/stdio/sscanf.html">sscanf()</a>
function. For example:</p>
<pre class="prettyprint">
istringstream stream1;
string string1 = "25";
stream1.str(string1);
int i;
stream1 >> i;
cout << i << endl; // displays 25
</pre>
<p>You can also specify the input string in the istringstream
constructor as in this example:</p>
<pre class="prettyprint">
string string1 = "25";
istringstream stream1(string1);
int i;
stream1 >> i;
cout << i << endl; // displays 25
</pre>
<p>A stringstream object can be used for both input and output to a
string like an fstream object.</p>
<div class="related-name-format">
Related topics:
</div>
<div class="related-content">
<a href="../cppio/index.html">C++ I/O Streams</a><br>
</div>
</div>
</td>
<script src="../../www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-2828341-1";
urchinTracker();
</script>
</tr>
</table>
</body>
<!-- Mirrored from cppreference.com/cppsstream/all.html by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 22 Jan 2008 06:25:44 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=iso-8859-1"><!-- /Added by HTTrack -->
</html>
<hr>
<div class="name-format">
String Stream Operators
</div>
<div class="syntax-name-format">
Syntax:
</div>
<pre class="syntax-box">
#include <sstream>
operator<<
operator>>
</pre>
<p>Like <a href="http://www.cppreference.com/cppio/index.html">C++
I/O Streams</a>, the simplest way to use string streams is to take
advantage of the overloaded << and >> operators.</p>
<p>The << operator inserts data into the stream. For
example:</p>
<pre class="prettyprint">
stream1 << "hello" << i;
</pre>
<p>This example inserts the string "hello" and the variable <i>i</i>
into <i>stream1</i>. In contrast, the >> operator extracts
data out of a string stream:</p>
<pre class="prettyprint">
stream1 >> i;
</pre>
<p>This code reads a value from <i>stream1</i> and assigns the
variable <i>i</i> that value.</p>
<div class="related-name-format">
Related topics:
</div>
<div class="related-content">
<a href="../cppio/index.html">C++ I/O Streams</a><br>
</div>
</div>
</td>
<script src="../../www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-2828341-1";
urchinTracker();
</script>
</tr>
</table>
</body>
<!-- Mirrored from cppreference.com/cppsstream/all.html by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 22 Jan 2008 06:25:44 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=iso-8859-1"><!-- /Added by HTTrack -->
</html>
<hr>
<div class="name-format">
rdbuf
</div>
<div class="syntax-name-format">
Syntax:
</div>
<pre class="syntax-box">
#include <sstream>
stringbuf* rdbuf();
</pre>
<p>The <em>rdbuf()</em> function returns a pointer to the string
buffer for the current string stream.</p>
<div class="related-name-format">
Related topics:
</div>
<div class="related-content">
<a href="str.html">str()</a><br>
<a href="../cppio/index.html">C++ I/O Streams</a><br>
</div>
</div>
</td>
<script src="../../www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-2828341-1";
urchinTracker();
</script>
</tr>
</table>
</body>
<!-- Mirrored from cppreference.com/cppsstream/all.html by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 22 Jan 2008 06:25:44 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=iso-8859-1"><!-- /Added by HTTrack -->
</html>
<hr>
<div class="name-format">
str
</div>
<div class="syntax-name-format">
Syntax:
</div>
<pre class="syntax-box">
#include <sstream>
void str( string s );
string str();
</pre>
<p>The function <em>str()</em> can be used in two ways. First, it can
be used to get a copy of the string that is being manipulated by the
current stream string. This is most useful with output strings.
For example:</p>
<pre class="prettyprint">
ostringstream stream1;
stream1 << "Testing!" << endl;
cout << stream1.str();
</pre>
<p>Second, <em>str()</em> can be used to copy a string into the
stream. This is most useful with input strings. For example:</p>
<pre class="prettyprint">
istringstream stream1;
string string1 = "25";
stream1.str(string1);
</pre>
<p><em>str()</em>, along with <em>clear()</em>, is also handy when
you need to clear the stream so that it can be reused:</p>
<pre class="prettyprint">
istringstream stream1;
float num;
// use it once
string string1 = "25 1 3.235\n1111111\n222222";
stream1.str(string1);
while( stream1 >> num ) cout << "num: " << num << endl; // displays numbers, one per line
// use the same string stream again with clear() and str()
string string2 = "1 2 3 4 5 6 7 8 9 10";
stream1.clear();
stream1.str(string2);
while( stream1 >> num ) cout << "num: " << num << endl; // displays numbers, one per line
</pre>
<div class="related-name-format">
Related topics:
</div>
<div class="related-content">
<a href="rdbuf.html">rdbuf()</a><br>
<a href="../cppio/index.html">C++ I/O Streams</a><br>
</div>
</div>
</td>
<script src="../../www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-2828341-1";
urchinTracker();
</script>
</tr>
</table>
</body>
<!-- Mirrored from cppreference.com/cppsstream/all.html by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 22 Jan 2008 06:25:44 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=iso-8859-1"><!-- /Added by HTTrack -->
</html>
<hr>
</body>
<!-- Mirrored from cppreference.com/cppsstream/all.html by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 22 Jan 2008 06:25:44 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=iso-8859-1"><!-- /Added by HTTrack -->
</html>