C++ 用户输入特殊字符时如何退出程序
我现在正在做一个简单的程序,它包含一个while循环,读入两个int,然后打印出来。我的问题是,当用户输入字符“|”时,如何退出程序?这是一个超级简单的小程序:C++ 用户输入特殊字符时如何退出程序,c++,cin,C++,Cin,我现在正在做一个简单的程序,它包含一个while循环,读入两个int,然后打印出来。我的问题是,当用户输入字符“|”时,如何退出程序?这是一个超级简单的小程序: int main() { int var1 = 0; int var2 = 0; while(cin>>var1>>var2) { cout << var1 << " " << var2 << endl; }
int main()
{
int var1 = 0;
int var2 = 0;
while(cin>>var1>>var2)
{
cout << var1 << " " << var2 << endl;
}
return 0;
}
intmain()
{
int var1=0;
int var2=0;
而(cin>>var1>>var2)
{
cout您所要做的就是检查输入的值是否在if块中,然后使用break关键字停止循环
这句话的意思是:
#include <stdio.h>
int main() {
char c;
for(;;) {
printf( "\nPress any key, Q to quit: " );
// Convert to character value
scanf("%c", &c);
if (c == 'Q')
break;
}
} // Loop exits only when 'Q' is pressed
#包括
int main(){
字符c;
对于(;;){
printf(“\n按任意键,Q退出:”;
//转换为字符值
scanf(“%c”、&c);
如果(c=='Q')
打破
}
}//循环仅在按下“Q”时退出
您所要做的就是检查输入的值是否在if块中,然后使用break关键字停止循环
这句话的意思是:
#include <stdio.h>
int main() {
char c;
for(;;) {
printf( "\nPress any key, Q to quit: " );
// Convert to character value
scanf("%c", &c);
if (c == 'Q')
break;
}
} // Loop exits only when 'Q' is pressed
#包括
int main(){
字符c;
对于(;;){
printf(“\n按任意键,Q退出:”;
//转换为字符值
scanf(“%c”、&c);
如果(c=='Q')
打破
}
}//循环仅在按下“Q”时退出
如前所述,如果用户输入|
,您将退出循环
不能解释为int
(之后)的任何其他内容
跳过前导空格)
如果你想要更精确的控制,你必须逐行阅读
行(并解析行),或逐个字符(并构建
如果用户输入|
,您将退出循环。或者
不能解释为int
(之后)的任何其他内容
跳过前导空格)
如果你想要更精确的控制,你必须逐行阅读
行(并解析行),或逐个字符(并构建
向上调整值)。一旦有人输入istream cannot>var1>>var2,您的循环就会退出;
cout一旦有人进入某个istream cannot>var1>>var2,您的循环就会退出;
当var1或var2(被读取后)包含管道字符时,您会问如何终止循环吗?我怀疑不会-可能会描述您想要什么,并提供更详细的示例输入。您会问当var1或var2(被读取后)如何终止循环吗是否包含管道字符?我怀疑没有-也许可以用更详细的示例输入描述您想要的内容。非常感谢您的回答!但当我在编译器中输入此字符时,会出现错误:错误C3867:'std::ios_base::good':函数调用缺少参数列表;使用“&std::ios_base::good”创建指向成员的指针,致命错误C1903:unable要从以前的错误中恢复@bobiscool cin.good是一个函数,应该是cin.good()。很抱歉,我是在脑子里写的。我现在没有权限使用编译器:),我现在将更改我原来的帖子代码现在运行,但是当我输入两个整数时,它会在屏幕上打印无限量的0,而我不能输入任何其他内容,这是为什么?@Avram:提取块。但是testcin
notcin、 good()
。if(c==|)
的部分是什么?非常感谢您的回答!但是当我在编译器中输入这一部分时,我得到了错误:错误C3867:'std::ios_base::good':函数调用缺少参数列表;使用“&std::ios_base::good”创建指向成员的指针,致命错误C1903:无法从以前的错误中恢复@bobiscool cin.good是一个函数,应该是cin.good()。很抱歉,我是在脑子里写的。我现在没有权限使用编译器:),我现在将更改我原来的帖子代码现在运行,但是当我输入两个整数时,它会在屏幕上打印无限量的0,而我不能输入任何其他内容,这是为什么?@Avram:提取块。但是testcin
notcin、 good()
。如果(c==|)
部分是什么?