C++ streambuf::sputn() 函数



C++ 的std::streambuf::sputn()函数用于将一系列字符写入缓冲区。它将给定内存位置中的指定数量的字符写入流缓冲区。它返回成功写入的字符数。

语法

以下是 std::streambuf::sputn() 函数的语法。

streamsize sputn (const char* s, streamsize n);

参数

  • s - 指示要写入的字符序列的指针。
  • n - 指示要写入的字符数。

返回值

它返回写入的字符数。

异常

如果抛出异常,则流缓冲区处于有效状态。

数据竞争

它修改流缓冲区对象。

示例 1

在以下示例中,我们将考虑 sputn() 函数的基本用法。

#include <iostream>
#include <sstream>
int main() {
   std::stringbuf x;
   const char * y = "TP";
   x.sputn(y, 2);
   std::cout << x.str() << std::endl;
   return 0;
}

输出

以上代码的输出如下:

TP

示例 2

考虑以下示例,我们将写入字符串的一部分。

#include <iostream>
#include <sstream>
int main() {
   std::stringbuf x;
   const char * y = "Hi, Welcome";
   x.sputn(y, 2);
   std::cout << x.str() << std::endl;
   return 0;
}

输出

以下是以上代码的输出:

Hi
streambuf.htm
广告