Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::strstreambuf::pcount(3)  C++ Standard Libary std::strstreambuf::pcount(3)

NAME
       std::strstreambuf::pcount - std::strstreambuf::pcount

Synopsis
	  int pcount() const;

	  Returns the number of	characters written to the output sequence.

	  If  the  next	pointer	for the	put area (std::streambuf::pptr()) is a
       null pointer,
	  returns zero.

	  Otherwise, returns the next pointer in the put area minus the	begin-
       ning pointer in
	  the put area,	that is	pptr() - pbase()

Parameters
	  (none)

Return value
	  The number of	characters written to the put area.

Example
       // Run this code

	#include <strstream>
	#include <iostream>

	int main()
	{
	    std::strstream dyn;	// dynamically-allocated output	buffer
	    dyn	<< "Test: " << 1.23 << std::ends;
	    std::strstreambuf* buf = dyn.rdbuf();
	    std::cout << "The size of the output is "
		      << buf->pcount() // or just buf.pcount()
		      << " and it holds	\"" << dyn.str() << "\"\n";
	    dyn.freeze(false); // after	calling	.str() on a dynamic strstream

	    char arr[10];
	    std::ostrstream user(arr, 10); // user-provided output buffer
	    buf	= user.rdbuf();
	    user << 1.23; // note: no std::ends
	    std::cout.write(arr, buf->pcount()); // or just user.pcount()
	    std::cout << '\n';

	    std::istrstream lit("1 2 3"); // read-only fixed-size buffer
	    buf	= lit.rdbuf();
	    // istrstream has no member	pcount(), so lit.pcount() won't	work
	    std::cout << "Input-only pcount() =	" << buf->pcount() << '\n';
	}

Output:
	The size of the	output is 11 and it holds "Test: 1.23"
	1.23
	Input-only pcount() = 0

See also
	  pcount obtains the number of characters written
		 (public member	function of std::strstream)
	  pcount obtains the number of characters written
		 (public member	function of std::ostrstream)

http://cppreference.com		  2022.07.31	  std::strstreambuf::pcount(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::strstreambuf::pcount&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help