std::strstream::pcount

来自cppreference.com
< cpp‎ | io‎ | strstream

int pcount() const;
(C++98 中弃用)
(C++26 中移除)

返回关联 std::strstreambuf 的放置区中已输出的字符数。相当于调用 rdbuf()->pcount()

参数

(无)

返回值

放置区中的字符数,或若未输出则为零。

示例

#include <iostream>
#include <strstream>
 
int main()
{
    std::strstream dyn; // 动态分配的输出缓冲区
    dyn << "Test: " << 1.23 << std::ends;
    std::cout << "输出大小为 " << dyn.pcount()
              << ",其持有 \"" << dyn.str() << "\"\n";
    dyn.freeze(false);
 
    char buf[10];
    std::strstream user(buf, 10); // 用户提供的输出缓冲区
    user << 1.23; // 注意:无 std::ends
    std::cout.write(buf, user.pcount());
    std::cout << '\n';
}

输出:

输出大小为 11,其持有 "Test: 1.23"
1.23

参阅

返回输出序列中下一位置指针减起始指针:写入字符数
(std::strstreambuf 的公开成员函数)