テキスト ファイルから母音を削除しようとしていますが、問題が発生しています。6 行目で次のようなコンパイラ エラーが表示されます。
invalid conversion from const char to char
これは、コードでファイル ストリームを設定する方法に関係していると確信しています。読み取りと書き込みに使用されるため、fstream を使用していますが、オープン モードがなくてもファイルへの書き込みと読み取りができると考えたため、オープン モードは含めませんでした (1 つを使用する必要があると確信しています)。 、どれかわかりません。)また、等号演算子の設定方法が合法かどうかもわかりません(s [i]がaまたはeまたはiと等しいかのように読み取りますか?またはoまたはu)。
コード:
#include "std_lib_facilities.h"
void vowel_removal(string& s)
{
for(int i = 0; i < s.length(); ++i)
if(s[i] == ('a' || 'e' || 'i' || 'o' || 'u')) s[i] = " ";
}
int main()
{
cout << "Enter file name.\n";
string filename;
cin >> filename;
fstream f(filename.c_str());
string word;
while(f>>word){
vowel_removal(word);
f << word;
}
keep_window_open();
}