[#bsl-basic_istringstream-operator_rshift-09c]
= xref:bsl.adoc[bsl]::xref:bsl/basic_istringstream.adoc[basic&lowbar;istringstream]::operator&gt;&gt;
:relfileprefix: ../../
:mrdocs:

Right shift operators

== Synopses

Declared in `&lt;bslstl&lowbar;istringstream&period;h&gt;`

Integer arithmetic extractors


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-03f.adoc[operator&gt;&gt;](bool& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-03f.adoc[_» more&period;&period;&period;_]#

Extract a boolean value from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-064.adoc[operator&gt;&gt;](bool& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-064.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-0a.adoc[operator&gt;&gt;](double& &lowbar;&lowbar;f);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0a.adoc[_» more&period;&period;&period;_]#

Extract a `double` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-009.adoc[operator&gt;&gt;](double& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-009.adoc[_» more&period;&period;&period;_]#

Floating point arithmetic extractors


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-07b.adoc[operator&gt;&gt;](float& &lowbar;&lowbar;f);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-07b.adoc[_» more&period;&period;&period;_]#

Extract a `float` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-044.adoc[operator&gt;&gt;](float& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-044.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-0b.adoc[operator&gt;&gt;](int& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0b.adoc[_» more&period;&period;&period;_]#

Extract an `int` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-00d.adoc[operator&gt;&gt;](int& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-00d.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-0f1.adoc[operator&gt;&gt;](long& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0f1.adoc[_» more&period;&period;&period;_]#

Extract a `long` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-00b.adoc[operator&gt;&gt;](long& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-00b.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-034.adoc[operator&gt;&gt;](long double& &lowbar;&lowbar;f);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-034.adoc[_» more&period;&period;&period;_]#

Extract a `long double` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-0cb.adoc[operator&gt;&gt;](long double& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0cb.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-071.adoc[operator&gt;&gt;](long long& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-071.adoc[_» more&period;&period;&period;_]#

Extract a `long long` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-093.adoc[operator&gt;&gt;](long long& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-093.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-06b.adoc[operator&gt;&gt;](short& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-06b.adoc[_» more&period;&period;&period;_]#

Extract a `short` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-046.adoc[operator&gt;&gt;](short& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-046.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-037a.adoc[operator&gt;&gt;](unsigned int& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-037a.adoc[_» more&period;&period;&period;_]#

Extract an `unsigned int` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-0375.adoc[operator&gt;&gt;](unsigned int& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0375.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-0c1.adoc[operator&gt;&gt;](unsigned long& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0c1.adoc[_» more&period;&period;&period;_]#

Extract an `unsigned long` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-095.adoc[operator&gt;&gt;](unsigned long& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-095.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-0e6.adoc[operator&gt;&gt;](unsigned long long& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0e6.adoc[_» more&period;&period;&period;_]#

Extract an `unsigned long long` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-0fe.adoc[operator&gt;&gt;](unsigned long long& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0fe.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-01.adoc[operator&gt;&gt;](unsigned short& &lowbar;&lowbar;n);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-01.adoc[_» more&period;&period;&period;_]#

Extract an `unsigned short` from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-0ff.adoc[operator&gt;&gt;](unsigned short& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0ff.adoc[_» more&period;&period;&period;_]#

Basic arithmetic extractors


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-005.adoc[operator&gt;&gt;](void*& &lowbar;&lowbar;p);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-005.adoc[_» more&period;&period;&period;_]#

Extract a pointer value from this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-098.adoc[operator&gt;&gt;](void*& value);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-098.adoc[_» more&period;&period;&period;_]#

Extracting into another streambuf&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-080.adoc[operator&gt;&gt;](&lowbar;&lowbar;streambuf&lowbar;type* &lowbar;&lowbar;sb);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-080.adoc[_» more&period;&period;&period;_]#

Extract characters into a stream buffer until end&hyphen;of&hyphen;file&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-0d.adoc[operator&gt;&gt;](std::basic&lowbar;streambuf&lt;char&lowbar;type, traits&lowbar;type&gt;* streambuf);
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0d.adoc[_» more&period;&period;&period;_]#

Apply a `basic&lowbar;istream` manipulator to this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-065.adoc[operator&gt;&gt;](xref:bsl/basic_istringstream.adoc[BaseStream]&(* manipulator)(xref:bsl/basic_istringstream.adoc[BaseStream]&));
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-065.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-04e.adoc[operator&gt;&gt;](&lowbar;&lowbar;ios&lowbar;type&(* &lowbar;&lowbar;pf)(&lowbar;&lowbar;ios&lowbar;type&));
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-04e.adoc[_» more&period;&period;&period;_]#

Interface for manipulators&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-08d.adoc[operator&gt;&gt;](&lowbar;&lowbar;istream&lowbar;type&(* &lowbar;&lowbar;pf)(&lowbar;&lowbar;istream&lowbar;type&));
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-08d.adoc[_» more&period;&period;&period;_]#


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lowbar;&lowbar;istream&lowbar;type&
xref:bsl/basic_istringstream/operator_rshift-0e3.adoc[operator&gt;&gt;](ios&lowbar;base&(* &lowbar;&lowbar;pf)(ios&lowbar;base&));
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0e3.adoc[_» more&period;&period;&period;_]#

Apply an `ios&lowbar;base` manipulator to this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-0e1.adoc[operator&gt;&gt;](xref:bsl/basic_istringstream.adoc[ios&lowbar;base]&(* manipulator)(xref:bsl/basic_istringstream.adoc[ios&lowbar;base]&));
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-0e1.adoc[_» more&period;&period;&period;_]#

Apply a `basic&lowbar;ios` manipulator to this stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/basic_istringstream.adoc[BaseStream]&
xref:bsl/basic_istringstream/operator_rshift-000.adoc[operator&gt;&gt;](std::basic&lowbar;ios&lt;char&lowbar;type, traits&lowbar;type&gt;&(* manipulator)(std::basic&lowbar;ios&lt;char&lowbar;type, traits&lowbar;type&gt;&));
----

[.small]#xref:bsl/basic_istringstream/operator_rshift-000.adoc[_» more&period;&period;&period;_]#

== Return Value

* `&ast;this` if successful
* a reference to this stream

== Parameters

[cols="1,4"]
|===
| Name| Description
| *&lowbar;&lowbar;n*
| A variable of builtin integral type&period;
| *value*
| destination for the extracted value
| *&lowbar;&lowbar;f*
| A variable of builtin floating point type&period;
| *&lowbar;&lowbar;p*
| A variable of pointer type&period;
| *&lowbar;&lowbar;sb*
| A pointer to a streambuf
| *streambuf*
| destination stream buffer
| *manipulator*
| function to apply
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
