c++ cin-关于C++输入cin的问题,下面的程序,如果输入一个字符,那就将陷入死循环,为什么?

问题描述

关于C++输入cin的问题,下面的程序,如果输入一个字符,那就将陷入死循环,为什么?

#include

main()

{

int i;

while(i!=-1)

{

cout<<"i="

cin>>i;

cout<
}
}
上面的程序,如果输入的不合法,比如输入一个字符,那就将陷入死循环。解决的办法 有个一,把cin>>i;语句移到判断循环的语句,那么输入的如果是不合法的变量,他将跳出循环 。

解决方案

是不是将i转化为对应的ASCII码值了?

解决方案二:

比如输入一个char型的进去,然后判断“i!=-1”,这时会把char型强制转换成int型,就是你输入char的ASCII码,ASCII码是没有-1这种东西的,所以永远不等于,死循环。

时间: 2024-12-31 16:04:45

c++ cin-关于C++输入cin的问题,下面的程序,如果输入一个字符,那就将陷入死循环,为什么?的相关文章

数据-卡尔曼滤波matlab程序怎么输入矩阵变量?

问题描述 卡尔曼滤波matlab程序怎么输入矩阵变量? 一般卡尔曼的程序都是一个固定值,我的数据是18~31度的温度数据,这个怎么才能输入呢?还有后面的程序涉及加减法的怎么改呢? 解决方案 matlab矩阵输入直接输入不就行么? 如>>a=18:1:31;

怎样做一个程序对另一个程序的输入进行测试?

问题描述 怎样做一个程序对另一个程序的输入进行测试? 例如: 现在有一个程序,一打开就要输入一个数,输入正确就显示OK,输入错误就显示Error. 现在我想做一个程序,对上面的程序要输入的数进行测试.怎样获得对上面程序的输入?怎样获得对上面程序的输入后的返回值? 解决方案 什么程序呢,可以通过截获内存信息的方式来解析.

c++-C++矩阵乘法-输入第二个矩阵数据后程序崩溃?

问题描述 C++矩阵乘法-输入第二个矩阵数据后程序崩溃? //初始化第二个矩阵的数据后程序崩溃了?为什么呢? #include using namespace std; int main() { a: int m,n,r,c; cout<<"请输入第一个矩阵的行与列"< cin>>m>>n; cout<<"请输入第二个矩阵的行与列"< cin>>r>>c; if(n!=r) { co

c++-折半查找程序,输入后就崩溃,谁能帮忙看一下

问题描述 折半查找程序,输入后就崩溃,谁能帮忙看一下 #include #include using namespace std; int half(int,vector ); int low=0; int high=7; int main(){ int b[10]={1,10,15,17,18,21,22,35,54,65}; vector a(b,b+10); cout<<"请输入要査找的数:"; int number; cin>>number; if(ha

c++-编写程序,输入任意一个含有空格的字符串(至少10个字符),删除指定字符后输出该字符串。

问题描述 编写程序,输入任意一个含有空格的字符串(至少10个字符),删除指定字符后输出该字符串. 编写程序,输入任意一个含有空格的字符串(至少10个字符),删除指定字符后输出该字符串.例如,输入"jiangsu123"和删除位置5,则输出"jiansu123". 解决方案 #include <iostream> #include <string> using namespace std; int main() { char s1[100];

c++-编写程序,输入字符串S1和S2 以及插入位置n,在字符串S1中的指定位置n处插入字符串S2。

问题描述 编写程序,输入字符串S1和S2 以及插入位置n,在字符串S1中的指定位置n处插入字符串S2. 编写程序,输入字符串S1和S2 以及插入位置n,在字符串S1中的指定位置n处插入字符串S2.例如,输入"jiangsu"."123"和位置3,则输出"ji123angsu". 解决方案 #include <iostream> #include <string> using namespace std; int main(

java源码-我怎么才能让我连续输入多行数然后以-1结束输入

问题描述 我怎么才能让我连续输入多行数然后以-1结束输入 我想实现输入多行数字,然后输入-1结束开始输出是不是完全平方数,怎么改? 解决方案 Scanner sc = new Scanner(System.in); String[] input = new String[26]; int i = 0; do { input[i] = sc.next(); i++; } while (!input[i - 1] .equals("-1") ); in.close(); 解决方案二: wh

emoji-写好的程序在输入iphone自带输入法的EMOJI表情时会崩溃。

问题描述 写好的程序在输入iphone自带输入法的EMOJI表情时会崩溃. 每次在对话框里输入IPHONE自带的EMOJI表情都会崩溃,NSSTRING不能接收EMOJI表情么?应该用什么接收啊,还是需要在程序里添加什么东西来满足EMOJI表情的需求么?

编码-霍夫曼树程序,输入字符串统计字符出现次数并译码。请问如何改成从文件读入字符串?

问题描述 霍夫曼树程序,输入字符串统计字符出现次数并译码.请问如何改成从文件读入字符串? //生成HuffmanCode文件的两个函数void HuffmanEncoding(HuffmanTree HTHuffmanCode HC){//根据HuffmanTreeHT求HuffmanCode表HC int cpi; char cd[n]; int start; cd[num] = ''; for(i = 1;i <= num;i++){ start = num; c = i; while((p