Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::strstream::str

      From cppreference.com
      <cpp‎ |io‎ |strstream

      [edit template]
       
       
       
       
      char* str();
      (deprecated in C++98)
      (removed in C++26)

      Returns the pointer to the beginning of the buffer, after freezing it. Effectively callsrdbuf()->str().

      Contents

      [edit]Parameters

      (none)

      [edit]Return value

      Pointer to the beginning of the buffer in the associatedstd::strstreambuf or a null pointer if no buffer is available.

      Notes

      Before a call tostr() that uses the result as a C-string, the stream buffer must be null-terminated. Regular output such as withstream<<1.2 does not store a null terminator, it must be appended explicitly, typically with the manipulatorstd::ends.

      After a call tostr(), dynamic streams become frozen. A call tofreeze(false) is required before exiting the scope in which thisstrstream object was created. otherwise the destructor will leak memory. Also, additional output to a frozen stream may be truncated once it reaches the end of the allocated buffer, which may leave the buffer not null-terminated.

      [edit]Example

      Run this code
      #include <iostream>#include <strstream> int main(){std::strstream dyn;// dynamically-allocated output buffer    dyn<<"Test: "<<1.23;// not adding std::ends to demonstrate append behaviorstd::cout<<"The output stream holds\"";std::cout.write(dyn.str(), dyn.pcount())<<"\"\n";// the stream is now frozen due to str()    dyn<<" More text"<<std::ends;std::cout<<"The output stream holds\"";std::cout.write(dyn.str(), dyn.pcount())<<"\"\n";    dyn.freeze(false);}

      Possible output:

      The stream holds "Test: 1.23"The stream holds "Test: 1.23 More "

      See also

      marks the buffer frozen and returns the beginning pointer of the input sequence
      (public member function ofstd::strstreambuf)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/io/strstream/str&oldid=105236"

      [8]ページ先頭

      ©2009-2025 Movatter.jp