[#bsl-basic_stringbuf-seekoff-00]
= xref:bsl.adoc[bsl]::xref:bsl/basic_stringbuf.adoc[basic&lowbar;stringbuf]::seekoff
:relfileprefix: ../../
:mrdocs:

`seekoff` overloads

== Synopses

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

Alters the stream positions&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
virtual
pos&lowbar;type
xref:bsl/basic_stringbuf/seekoff-04.adoc[seekoff](
    off&lowbar;type,
    ios&lowbar;base::seekdir,
    ios&lowbar;base::openmode = ios&lowbar;base&colon;&colon;in &verbar; ios&lowbar;base&colon;&colon;out);
----

[.small]#xref:bsl/basic_stringbuf/seekoff-04.adoc[_» more&period;&period;&period;_]#

Set the current input and&sol;or output position relative to `whence`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
virtual
xref:bsl/basic_stringbuf/pos_type.adoc[basic&lowbar;stringbuf&lt;CHAR&lowbar;TYPE, CHAR&lowbar;TRAITS, ALLOCATOR&gt;::pos&lowbar;type]
xref:bsl/basic_stringbuf/seekoff-07.adoc[seekoff](
    xref:bsl/basic_stringbuf/off_type.adoc[off&lowbar;type] offset,
    std::ios&lowbar;base::seekdir whence,
    std::ios&lowbar;base::openmode modeBitMask = ios&lowbar;base&colon;&colon;in &verbar; ios&lowbar;base&colon;&colon;out);
----

[.small]#xref:bsl/basic_stringbuf/seekoff-07.adoc[_» more&period;&period;&period;_]#

== Return Value

offset of the new position, or `pos&lowbar;type(off&lowbar;type(&hyphen;1))` on failure

== Parameters

[cols="1,4"]
|===
| Name| Description
| *offset*
| position offset relative to `whence`
| *whence*
| base position for the seek (`beg`, `cur`, or `end`)
| *modeBitMask*
| whether to adjust the input position, output position, or both
|===


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