首页 > C++ > 输入输出流 阅读:275

C++ cout.write():输出字符串

C++ cout.put()》一节中,讲解了 ostream 类提供的 put() 成员方法的用法,其用于向输出流缓冲区中添加要输出的单个字符。而在某些场景中,我们还需要输出指定的字符串,这时可以使用 ostream 类提供的 write() 成员方法。

write() 成员方法专用于向输出流缓冲区中添加指定的字符串,初学者可以简单的理解为输出指定的字符串。其语法格式如下:

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

其中,s 用于指定某个长度至少为 n 的字符数组或字符串;n 表示要输出的前 n 个字符。

可以看到,该函数会返回一个 ostream 类的引用对象,可以理解返回的是 cout 的引用。这意味着,我们可以像下面这样使用 write() 方法:

cout.write(c1, 1).write(c2, 2).write(c3, 3);

因为 cout.write(c1, 1) 向输出流缓冲区中添加 c1 字符串中第 1 字符的同时,会返回一个引用形式的 cout 对象,所以可以继续用此对象调用 write(c2, 2),向输出流缓冲区添加 c2 字符串中前 2 个字符,依次类推。

【例 1】输出 "http://c.biancheng.net/cplus/" 字符串中前 4 个字符。
#include <iostream>
using namespace std;

int main() {
    const char * str = "http://c.biancheng.net/cplus/";
    cout.write(str, 4);
    return 0;
}
程序执行结果为:

http


【例 2】连续使用 write() 方法。
#include <iostream>
using namespace std;

int main() {
    cout.write("http://", 7).write("c.biancheng.net", 15).write("/cplus/", 7);
    return 0;
}
程序执行结果为:

http://c.biancheng.net/cplus/

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注