gpt4 book ai didi

c++ - std::getline:定界字符与字符数

转载 作者:行者123 更新时间:2023-11-30 02:00:39 29 4
gpt4 key购买 nike

成员函数 istream& istream::getline(char* s, streamsize n, char delim); 使您能够从流中提取字符,直到发生以下 3 种情况之一:

  1. 找到指定的分隔符,
  2. n - 1 个字符从流中读取,或者
  3. 发生 EOF 或错误

显然,条件 3(发生错误)很容易检测到。但是调用者如何区分条件(1)和(2)呢?您如何判断分隔符是否存在?可能读取了 n - 1 个字符,但未找到定界字符。

最佳答案

根据 http://en.cppreference.com/w/cpp/io/basic_istream/getline

在情况 3 中,setstate(eofbit) 将被执行。

在情况 2 中,setstate(failbit) 将被执行。

关于c++ - std::getline:定界字符与字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14915101/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com