C++ Ostream::write() 函数



C++ 的std::ostream::write() 函数用于将一段二进制数据写入输出流。与通常的插入(<<)操作(格式化数据)不同,write() 处理未格式化的二进制数据,写入指定数量的字节。此函数接受两个参数:指向数据缓冲区的指针和要写入的字节数。

语法

以下是 std::ostream::write() 函数的语法。

ostream& write (const char* s, streamsize n);

参数

  • s - 指示指向至少包含 n 个字符的数组的指针。
  • n - 指示要插入的字符数。

返回值

它返回 ostream 对象(*this)。

异常

如果抛出异常,则对象处于有效状态。

数据竞争

修改流对象访问由 s 指向的最多 n 个字符。

示例

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

#include <iostream>
int main()
{
    const char* x = "TUTORIALSPOINT";
    std::cout.write(x, 14);
    return 0;
}

输出

以上代码的输出如下:

TUTORIALSPOINT

示例

考虑以下示例,我们将仅将字符串 message 的 2 个字符写入输出。

#include <iostream>
int main()
{
    const char *message = "Hi, Namaste";
    std::cout.write(message, 2);
    return 0;
}

输出

以下是以上代码的输出:

Hi

示例

让我们看下面的示例,我们将把整数的二进制表示写入输出。

#include <iostream>
int main()
{
    int a = 121;
    std::cout.write(reinterpret_cast<char*>(&a), sizeof(a));
    return 0;
}

输出

如果我们运行以上代码,它将生成以下输出:

y...
ostream.htm
广告