我正在嘗試在C++中創建一個能夠區分兩個.txt文件的程序。Diff算法C++
struct line
{
string text;
size_t num;
int status;
};
void compareFiles(vector<line> &buffer_1, vector<line> &buffer_2, size_t index_1, size_t index_2)
{
while(index_1 < buffer_1.size())
{
while(index_2 < buffer_2.size())
{
X = buffer_1[index_1].text;
Y = buffer_2[index_2].text;
if(X == Y)
{
++index_1;
++index_2;
}
else
{
LCS();
string lcs = printLCS(X.length(), Y.length());
/*
* Here's my problem
*/
}
}
}
}
正如你所看到的,我有兩個緩衝區(行矢量),以前加載了文件內容。我也有LCS算法功能齊全(測試)。 LCS在全局定義的字符串X和Y上工作。
因此,我真正需要做的是逐行比較緩衝區和LCS,但我沒有辦法做到這一點。
你能幫我嗎?
我建議不嵌套你的兩個'while()'循環 - 當你用完'buffer_2'中的行時會發生什麼? 'index_1'永遠不會增加,最外層的'while'循環永遠不會終止。 'while(index_1
sarnold
2011-05-27 23:25:49