【发布时间】:2012-09-07 18:48:09
【问题描述】:
我正在做我的家庭作业,但我卡住了,因为在作业中我们必须要求用户输入文件名,还要输入 wc cc 或 lc(文件的字数、字符数和行数.例如,wc filename.txt。我想检查文件以查看它是否有效,我理解并且我知道如何比较用户输入以确定要运行的不同类型的函数,但我不明白你是如何可以一起做。有什么想法吗?这就是我目前的想法。
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main()
{
string line;
string file;
ifstream input; //input file stream
int i;
cout << "Enter a file name" << endl;
while(true){
cout << ">" ;
getline(cin,file);
input.open(file.c_str());
if (input.fail()) {
cerr << "ERROR: Failed to open file " << file << endl;
input.clear();
}
else {
i = 0;
while (getline(input, line))
if(line == "wc"){
cout << "The word count is: " << endl;
}
else if(line == "cc"){
cout << "The character count is: " << endl;
}
else if(line == "lc"){
cout << "The line count is: " << endl;
}
else if(line == "exit"){
return 0;
}
else{
cout << "----NOTE----" << endl;
cout << "Available Commands: " << endl;
cout <<"lc \"filename\"" << endl;
cout <<"cc \"filename\"" << endl;
cout <<"wc \"filename\"" << endl;
cout <<"exit" << endl;
}
}
}
return 0;
}
void wordCount(){
//TBD
}
void characterCount(){
//TBD
}
void lineCount(){
//TBD
}
【问题讨论】:
-
我不确定你的问题是什么问题,当你一起说时你是什么意思。您显然首先需要检查文件,如果没有问题,请执行操作。
-
Stack Overflow 是一个期望答案能够持续并对其他人有所帮助的地方,因此在回答问题时不应删除问题。一旦有人以令人满意的方式回答了您的问题,您通常会单击帖子分数下方的复选标记(答案左侧);这将问题标记为“已回答”。我已将您的问题文本恢复到您将其全部删除之前,如果您自己找到了解决方案,或者接受下面对您有帮助的一个答案,我鼓励您发布您的解决方案。