C++字符串输入

C++中的字符串输入,大体分为三种输入方式 1、cin >> () 2、cin.getline 3、cin.get

  1. 当通过cin进行输入时,若输入字符中存在空格,回车等,程序将自动结束剩下的字符输入,剩下的字符将全部放在下个cin进行输入 ,即cin 只能实现简单的单词输入,使用了cin 记得要处理回车键,因为cin >> 是不会丢弃回车键,因此会把回车键放在下一个输入。代码如下所示:
        const int SIZE = 20;
        char name[SIZE];
        char dessert[SIZE];
        cout << "Enter your name:\n";
        cin >> name;
        cout << "Enter your favorite dessert:\n";
        cin >> dessert;
        cout << "Hello " << name << " I have some " << dessert << " for you.\n";

    运行结果:

    你会发现,你根本不需要输入dessert,程序自动进行显示,原因就在于Tan Yue名字中有空格,程序cin >> name只单独提出Tan 而把 Yue丢给 cin >> dessert。

  2. cin.getline 可以输入一行字符(不忽略空格) ,直到遇见回车键(丢弃回车键,回车键将自动转换为空字符),或者直接到字符串的最末端(只能输入n-1位)第n位将自动给空字符,若输入字符没有到n位,则getline()函数还提供了第三个参数。 

        const int SIZE = 20;
        char name[SIZE];
        char dessert[SIZE];
        cout << "Enter your name:\n";
        cin.getline(name, SIZE);
        cout << "Enter your favorite dessert:\n";
        cin.getline(dessert, SIZE);
        cout << "Hello " << name << " I have some " << dessert << " for you.\n";

    运行结果:

  3.  get()函数不丢弃回车键,因此需要使用一个多余的get()来存放回车键

        const int SIZE = 20;
        char name[SIZE];
        char dessert[SIZE];
        cout << "Enter your name:\n";
        cin.get(name, SIZE).get();
        cout << "Enter your favorite dessert:\n";
        cin.get(dessert, SIZE).get();
        cout << "Hello " << name << " I have some " << dessert << " for you.\n";

    运行结果:

    即回车键被get()函数所接受。 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值