设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

C++ cout.write 输出字符串

发布时间:2022-07-05 10:04 所属栏目:51 来源:互联网
导读:《C++ cout.put()》一节中,讲解了 ostream 类提供的 put() 成员方法的用法,其用于向输出流缓冲区中添加要输出的单个字符。而在某些场景中,我们还需要输出指定的字符串,这时可以使用 ostream 类提供的 write() 成员方法。 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/
 
    关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。《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/
 
  关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读