我有我的C++程序的問題。我重新格式化並顯示用戶輸入到控制檯的單詞。如果用戶輸入:嗨,我是bob。用戶在進入控制檯進入bob後按回車。我將重新格式化並以新格式重新打印。問題是我不想顯示更多輸入消息,直到輸入該控制檯行上的所有單詞。當前循環我在每個單詞後顯示輸入請求,或根本不顯示。這取決於我是否包含提示或不提示。我需要做一個while循環處理每個單詞並輸出它,並在最後一個單詞後停下來。什麼是布爾參數呢?我包括我的代碼以供參考。C++中,直到沒有更多的輸入使用while循環時輸入
int _tmain(int argc, _TCHAR* argv[])
{
int b;
string input;
string output ;
int check = 1;
while (check){
cout << "Enter in one or more words to be output in ROT13: " << endl;
cin >> input;
while(my issue is here){
const char *word = input.c_str();
for (int i = 0; i < input.length(); i++){
b = (int)word[i];
if (b > 96){
if (b >= 110){
b = b - 13;
}
else {
b = b + 13;
}
output += ((char)b);
}
else
{
if (b >= 78){
b = b - 13;
}
else {
b = b + 13;
}
output += ((char)b);
}
}
cout << output << endl;
output = "";
cin >> input;
}
check = 0;
}
return 0;
}
@NeilKirk我從來沒有說過while(eof) – 2015-04-01 01:24:26
我說「直到輸入結束」或「eof」 – 2015-04-01 01:28:21
你可以做freopen(「filename」,「r」,m stdin);重定向輸入。 – 2015-04-01 01:29:13