C++读取带空格字符串的方法

 更新时间:2018年07月12日 11:04:39   作者:good_luck512233  
今天小编就为大家分享一篇C++读取带空格字符串的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

关于在C++中字符串的输入整理笔记

1. cin

cin是C++中最常用的输入语句,当遇到空格或者回车键即停止

如:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   chara[50];
   cin>>a; 
   cout<<a<<endl;
   return0;
}

输入:abcd遇回车输出abcd

缺点:只能输入没有空格的字符串,当输入中含有空格,则只能输出空格之前的字符

输入:I love China输入空格时输入并未停止,遇回车输入停止,输出I,空格后面的均未输出。

2. gets()

可以无限读取,以回车结束读取,C语言中的函数,在C++中运行会产生bug。

如:

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   chara[50];
   cin>>a;
   gets(a);
   cout<<a<<endl;
   return0;
}

输入:I love China回车结束输入,输出结果为love China。首字符自动丢弃。

3. getline()

若定义变量为string类型,则要考虑getline()函数。用法如下:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   stringa;
   getline(cin,a);
   cout<<a<<endl;
   return0;
}

输入:I love China回车并未结束输入,需回车两次才能结束输入,输出结果为:I love China.

4.cin.get cin.getline

cin.get()函数可以接收空格,遇回车结束输入。

#include <iostream>
using namespace std;
int main()
{
   chara[50];
   cin.get(a,50);
   cout<<a<<endl;
   return0;
}

输入:I love China回车结束输入,输出结果为I love China。

5. cin.getline

cin.getline()函数可以同cin.get()函数类似,也可接收空格,遇回车结束输入。

#include <iostream>
using namespace std;
int main()
{
   chara[50];
   cin.getline(a,50);
   cout<<a<<endl;
   return0;
}

输入:I love China回车结束输入,输出结果为I love China。

以上这篇C++读取带空格字符串的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 实现一个random shuffle算法示例

    实现一个random shuffle算法示例

    这篇文章主要为大家介绍了实现一个random shuffle算法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Qt为exe添加ico图片的简单实现步骤

    Qt为exe添加ico图片的简单实现步骤

    这篇文章主要给大家介绍了关于Qt为exe添加ico图片的简单实现步骤,通过文中介绍的方法可以帮助大家实现这个自定义exe图标的效果,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • C++简单输出钻石菱形图效果

    C++简单输出钻石菱形图效果

    这篇文章主要介绍了C++简单输出钻石菱形图效果,涉及C++简单的数组操作与图形打印技巧,需要的朋友可以参考下
    2016-05-05
  • C和指针小结(推荐)

    C和指针小结(推荐)

    下面小编就为大家带来一篇C和指针小结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考,一起跟随小编过来看看吧
    2016-06-06
  • c++11 chrono全面解析(最高可达纳秒级别的精度)

    c++11 chrono全面解析(最高可达纳秒级别的精度)

    chrono是c++ 11中的时间库,本文就来详细的介绍一下chrono库的具体使用,关键是理解里面时间段(Durations)、时间点(Time points)的概念,感兴趣的可以了解一下
    2021-11-11
  • C语言入门之基础知识详解

    C语言入门之基础知识详解

    这篇文章主要介绍了C语言入门之基础知识详解,文中有非常详细的C语言使用教程及相关基础知识,对正在学习c语言的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • C++模拟实现string的示例代码

    C++模拟实现string的示例代码

    这篇文章主要为大家详细介绍了C++模拟实现string的相关资料,文中的示例代码讲解详细,对我们学习C++有一定的帮助,需要的可以参考一下
    2022-11-11
  • C语言字符函数、内存函数功能及实现代码

    C语言字符函数、内存函数功能及实现代码

    这篇文章主要介绍了C语言字符函数、内存函数 功能及实现,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • c++访问修饰符与继承关系详解

    c++访问修饰符与继承关系详解

    C++提供了三个修饰符来限定类成员的被访问权限,分别是public、protected、private,通过限定访问权限,可以达到程序编写者想要解决的安全问题和权限问题,本文给大家介绍c++访问修饰符与继承关系,感兴趣的朋友一起看看吧
    2023-10-10
  • C++ 遍历二叉树实例详解

    C++ 遍历二叉树实例详解

    这篇文章主要介绍了C++ 遍历二叉树实例详解的相关资料,需要的朋友可以参考下
    2017-06-06

最新评论