Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/130.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++;,cin,直到不再使用while循环在线输入 我的C++程序有问题。我重新格式化并显示用户进入控制台的单词。如果用户输入:嗨,我是bob。用户将bob输入控制台后将按enter键。我将重新格式化并以新的格式重新打印。问题是我不想显示更多输入的消息,直到控制台行上的所有单词都输入完毕。我的当前循环要么在每个单词后显示输入请求,要么根本不显示。这取决于我是否包含提示。我需要做一个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; } int-tmain(int-argc,_-TCHAR*argv[] { int b; 字符串输入; 字符串输出; 整数检查=1; while(检查){ 不能输入; 而(我的问题在这里){ const char*word=input.c_str(); 对于(int i=0;i96){ 如果(b>=110){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } 其他的 { 如果(b>=78){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } } 不能输入; } 检查=0; } 返回0; }_C++_Input_Console_Cin - Fatal编程技术网 =110){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } 其他的 { 如果(b>=78){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } } 不能输入; } 检查=0; } 返回0; },c++,input,console,cin,C++,Input,Console,Cin" /> =110){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } 其他的 { 如果(b>=78){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } } 不能输入; } 检查=0; } 返回0; },c++,input,console,cin,C++,Input,Console,Cin" />

C++;,cin,直到不再使用while循环在线输入 我的C++程序有问题。我重新格式化并显示用户进入控制台的单词。如果用户输入:嗨,我是bob。用户将bob输入控制台后将按enter键。我将重新格式化并以新的格式重新打印。问题是我不想显示更多输入的消息,直到控制台行上的所有单词都输入完毕。我的当前循环要么在每个单词后显示输入请求,要么根本不显示。这取决于我是否包含提示。我需要做一个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; } int-tmain(int-argc,_-TCHAR*argv[] { int b; 字符串输入; 字符串输出; 整数检查=1; while(检查){ 不能输入; 而(我的问题在这里){ const char*word=input.c_str(); 对于(int i=0;i96){ 如果(b>=110){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } 其他的 { 如果(b>=78){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } } 不能输入; } 检查=0; } 返回0; }

C++;,cin,直到不再使用while循环在线输入 我的C++程序有问题。我重新格式化并显示用户进入控制台的单词。如果用户输入:嗨,我是bob。用户将bob输入控制台后将按enter键。我将重新格式化并以新的格式重新打印。问题是我不想显示更多输入的消息,直到控制台行上的所有单词都输入完毕。我的当前循环要么在每个单词后显示输入请求,要么根本不显示。这取决于我是否包含提示。我需要做一个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; } int-tmain(int-argc,_-TCHAR*argv[] { int b; 字符串输入; 字符串输出; 整数检查=1; while(检查){ 不能输入; 而(我的问题在这里){ const char*word=input.c_str(); 对于(int i=0;i96){ 如果(b>=110){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } 其他的 { 如果(b>=78){ b=b-13; } 否则{ b=b+13; } 输出+=((字符)b); } } 不能输入; } 检查=0; } 返回0; },c++,input,console,cin,C++,Input,Console,Cin,如果没有更多的输入行,cin函数将返回false。您可以执行以下操作直到输入结束,或者如果您将cin重定向到从文件读取,则执行eof int a; while(cin >> a){ //Your loop body } 您可以使用以下行替换整个while循环: std::getline(std::cin, input); // where input is a std::string 然后在这一行之后重新格式化。@NeilKirk我从来没有说过,而(eof)我说的是“直

如果没有更多的输入行,cin函数将返回false。您可以执行以下操作直到输入结束,或者如果您将cin重定向到从文件读取,则执行eof

int a;
while(cin >> a){
    //Your loop body
}

您可以使用以下行替换整个while循环:

std::getline(std::cin, input);  // where input is a std::string

然后在这一行之后重新格式化。

@NeilKirk我从来没有说过,而(eof)我说的是“直到输入结束”或“eof”,你可以执行freopen(“filename”,“r”,m stdin);重定向输入。好的,对不起,我误解了。