我试图从带有\n
结尾的txt文件中读取一些信息。
然而,每当我穿过一条空线时,我就会遇到一个段错误。但是我只想让这条线被忽略。
代码:
std::ifstream config_file (config_);
string input_line;
while (std::getline(config_file, input_line))
{
if (??check for newline??)
continue
}
我到目前为止尝试过: 将getline更改为这些参数:
(config_file, input_line, '\n')
和if if语句:
if (input_line.at(0) == '\n')
但是我总是得到段错误^^'。
答案 0 :(得分:1)
使用
if (input_line.at(0) == '\n')
检查空行是否错误sincce std::getline
读取并丢弃分隔符(在您的情况下为'\n'
)。
相反,请使用
if (input_line.empty())
答案 1 :(得分:0)
std::getline
会丢弃换行符。
您可以检查std::string::empty()
以检测空行。