我正在尝试创建一个免费的库存系统,我似乎无法弄清楚如何读取文件内容。如果有匹配的话,请加上一个数字。因此,如果说“Sticks”在文件中显示3次,则将其打印到控制台。 “棒:3”
void ViewFiles() {
string line;
ifstream a_file("Candles");
if (a_file.is_open())
{
while (getline(a_file, line))
{
cout << line << '\n';
if (line == line) {
line = line + "1";
}
}
a_file.close();
}
else cout << "Unable to open file";
}
如果代码不好,我很抱歉这是我自己的第一个真正的项目。
答案 0 :(得分:1)
只需使用地图即可。 你可以这样做:
map<string, int> someName;
每当您找到新单词时,请将其用作关键字:
someName[word]++; //you found it so increment the occurrence;
答案 1 :(得分:0)
你需要2个循环。在while内添加另一个,将第一个单词与列表的其余部分进行比较。如果找到相同的单词,则向计数器添加1。完成后,打印该单词和计数器,然后查找第二个单词......