注册 登录
编程论坛 VC.NET论坛

重大发现02:用cin输入空格的问题

终极意义 发布于 2011-04-24 22:56, 1900 次点击
#include <iostream.h>
void main()
{   
cout<<"please enter your name and age:"<<endl;     
char name[10];   
 int age;     cin>>name;   
 cin>>age;     
cout<<"your name is"<<name<<endl;     
cout<<"your age is"<<age<<endl;     
}
说明:现在要用cin输入name和age。
比如说name是Li Ming(中间有一个空格),age是:19
但是大家都知道:cin的数据间是以空格分开的,这就造成不能输Li Ming中间的那个空格。否则将认为name是Li
大家不妨将以上代码带入,亲自试试,挺有意思的,也希望大家能找出能够输入空格的办法。(毕竟名和字之间有个空格是比较顺眼的)
1 回复
#2
lluunn0072011-05-17 16:32
写了个小例子,经过测试:

#include "stdafx.h"
#include <iostream>
#include <string>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    cout<<"hello"<<endl;

    cout<<"this is "<<"a longer sentence\n";
   
    cout<<"please enter your age"<<endl;
   
    cout<<"type your fullname"<<endl;
    int age;
    string fullname;
    cin>>age;
    fflush(stdin);
    system("pause");
    getline(cin,fullname);
    cout<<"hi."<<fullname<<" I see you are "<<age<<" years old"<<endl;
    return 0;
}



//Output info....

hello
this is a longer sentence
please enter your age
type your fullname
34
请按任意键继续. . .
lu ning
hi.lu ning I see you are 34 years old
请按任意键继续. . .
1