C++についての質問です。 キーボードからファイル名を入力して、そのファイルの中の単語数を数えるプログラムを作成しました。入力したファイル名が存在しなかった場合
C++についての質問です。 キーボードからファイル名を入力して、そのファイルの中の単語数を数えるプログラムを作成しました。入力したファイル名が存在しなかった場合 "file not open: 入力したファイル名" という風に表示させたいのですが "file not open: 入力したファイル名0"とファイル名の最後に0が表示されて困っています。どうすれば解決できるでしょうか。 ちなみに単語数を数えることはできました。 以下ソースコードになります #include <iostream> #include <fstream> #include <string> using namespace std; int main() { fstream file; string filename; cin >> filename; file.open(filename,ios::in); if(!file.is_open()){ cout << "file not open: " << filename ; } string s; int i=0; int count=0; while(file >> s){ if(isdigit(s[0]) || isalpha(s[0])){ count++; } if(s[i]=='endl' && isalpha(s[i+1])){ count++; } else if(s[i]=='endl' && isdigit(s[i+1])){ count++; } else if(isblank(s[i]) && isalpha(s[i+1])){ count++; } else if(isblank(s[i]) && isdigit(s[i+1])){ count++; } i++; } cout << count; file.close(); return 0; }
C言語関連・42閲覧