我试图从存储到字符串中的文件开始计算行开头的空格' '
。
问题是,当找到与std::getline()
不同的任何字符时,我不知道如何告诉' '
停止。
std::getline(file_input, string_target, 'Any_character_except_space');
答案 0 :(得分:1)
您不能将除空格之外的任何字符用作std::getline()
的分隔符,所有签名都不允许这样做。
你可以做的是例如:
std::string line;
std::getline(file_input,line);
auto pos = std::find_if_not(std::begin(line),std::end(line),[](char c) {
return std::isspace(c);
// or c == ' '
// or whatever condition you need
} );
size_t space_count = std::distance(std::begin(line),pos);
这里是full example。