C+=中cout方法的一些疑问
#include<iostream>
using namespace std;
int main (void)
{
long a ;
static int count = 0;
while(cin>>a)
{
count++;
cout<<"count1 = "<<count<<endl;
}
cout<<"count ="<<count<<endl;
return 0;
}
//1.情况一:当我输入4.09时:
//结果输出是count1= 4;count =1;
//2.情况二:当我输入是‘q’时:
//结果输出却是:count1 = 0;count =0;
/*疑问:为何会有不同的结果呢?假如cout可以自动进行数据类型检查的话, 那当输入是4.09的时候
,输出结果跟输入是q时的一样啊?为何会不一样呢------------请各位大侠帮小弟解析一下*/ iostream c c++??cout
[解决办法]
while(cin>>a)
{
count++;
cout<<"count1 = "<<count<<endl; }
你确定你的描述没错误????
[解决办法]
这是我的执行情况。
4.09
count1 = 1
count = 1
q
count = 0
[解决办法]
输入4.09,4是合法的类型,.09忽略。
输入q,没有合法的类型,全部忽略。
[解决办法]
另外是cin做的类型检查,不是cout。