当代码是输入整数,而实际输入是非法字符(如字母)时程序就会挂掉。
这时需偠重置cin标识和清空缓冲区才行
if (!cin) //当输入失败(比如输入的不是整数)时,必须先重置cin然后手动清空cin的缓冲区,然后才能重新输入
clear函数是清空cin标识的cin标识是输入错误时产生的,要手动清除才能继续输入
ignore和sync函数都可以用来清空缓冲区,这2个函数有区别但是区别不大。
当代码是输入整数,而实际输入是非法字符(如字母)时程序就会挂掉。
这时需偠重置cin标识和清空缓冲区才行
if (!cin) //当输入失败(比如输入的不是整数)时,必须先重置cin然后手动清空cin的缓冲区,然后才能重新输入
clear函数是清空cin标识的cin标识是输入错误时产生的,要手动清除才能继续输入
ignore和sync函数都可以用来清空缓冲区,这2个函数有区别但是区别不大。
当代码是输入整数,而实际输入是非法字符(如字母)时程序就会挂掉。
这时需偠重置cin标识和清空缓冲区才行
if (!cin) //当输入失败(比如输入的不是整数)时,必须先重置cin然后手动清空cin的缓冲区,然后才能重新输入
clear函数是清空cin标识的cin标识是输入错误时产生的,要手动清除才能继续输入
ignore和sync函数都可以用来清空缓冲区,这2个函数有区别但是区别不大。