lineBuffer in C++

lineBuffer in C++

本文关键字:C++ in lineBuffer      更新时间:2023-10-16

我刚刚浏览了一些编码内容,注意到了以下代码:

int main(int argc,char** argv)
{
  ifstream file;
  string lineBuffer;
  file.open(argv[1]) ;  
  while (!file.eof()) 
  {
     getline(file, lineBuffer);
     if (lineBuffer.length() == 0)
       continue; //ignore all empty lines
     else 
     {
        //do your code here
     }
  }
  return 0;
}

我在网上搜索了lineBuffer的概念,但没有找到相关的答案。有人能帮助我理解lineBuffer是如何逐行读取文件的吗?

string lineBuffer;

这是一个名为lineBuffer的变量。这不是一个需要理解的概念,它不读取文件,它只是一个有名称的字符串,它可以很容易地被称为:

string fred;

但因为它被用作保存每一行文本的缓冲区,所以将其称为lineBuffer更明智,也更有帮助。

无论你在哪里找到代码,都不要再读了,因为代码是由一个不太懂C++的人编写的。此部件已损坏:

while (!file.eof()) 
{
   getline(file, lineBuffer);

应该这样做:

while (getline(file, lineBuffer))
{

lineBuffer是一个字符串,您要求C++将它读取的行放在其中。一旦该行在该字符串中,他们就会检查该行中是否有任何内容,如果没有,则跳过处理