c++ cin输入空格_cin输入string遇到空格

c++ cin输入空格_cin输入string遇到空格文章目录一、cin>>用法1:输入一个数字或字符用法2:接收一个字符串,遇“空格”、“TAB”、“回车”就结束二、cin.getline()用法:接收一个字符串,可以接收空格并输出延伸:三、getline()用法:接收一个字符串,可以接收空格并输出,需包含“#include”四、注意的问题一、cin>>用法1:输入一个数字或字符#include using name……

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、cin>>

用法1:输入一个数字或字符

#include <iostream>
using namespace std;
main ()
{ 
   
	int a,b;
	cin>>a>>b;
	cout<<a+b<<endl;
}

用法2:接收一个字符串,遇“空格”、“TAB”、“回车”就结束

#include <iostream>
using namespace std;
main ()
{ 
   
	char a[20];
	cin>>a;
	cout<<a<<endl;
}

例如:

  1. 输入:jkljkljkl
    输出:jkljkljkl

  2. 输入:jkljkl jkljkl //遇空格结束
    输出:jkljkl

二、cin.getline()

用法:接收一个字符串,可以接收空格并输出

#include <iostream>
using namespace std;
main ()
{ 
   
	char m[20];
	cin.getline(m,5);
	cout<<m<<endl;
}

输入:jkljkljkl
输出:jklj

接收5个字符到m中,其中最后一个为’\0’,所以只看到4个字符输出;

如果把5改成20:
输入:jkljkljkl
输出:jkljkljkl

输入:jklf fjlsjf fjsdklf
输出:jklf fjlsjf fjsdklf

延伸:

1、cin.getline()实际上有三个参数,cin.getline(接收字符串的变量,接收字符个数,结束字符)
2、当第三个参数省略时,系统默认为’\0’
3、如果将例子中cin.getline()改为cin.getline(m,5,‘a’);当输入jlkjkljkl时输出jklj,输入jkaljkljkl时,输出jk(即第三个参数是所自己设定的终止字符

三、getline()

用法:接收一个字符串,可以接收空格并输出,需包含“#include<string>

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

输入:jkljkljkl
输出:jkljkljkl

输入:jkl jfksldfj jklsjfl
输出:jkl jfksldfj jklsjfl

四、注意的问题

1、cin.getline()属于istream流,而getline()属于string流,是不一样的两个函数,用时需要添加不同的头文件(iostream)(string)

2、当同时使用cin>>,getline()时,需要注意的是,在cin>>输入流完成之后,getline()之前,需要通过

str="\n";
getline(cin,str);

的方式将回车符作为输入流cin以清除缓存,如果不这样做的话,在控制台上就不会出现getline()的输入提示,而直接跳过,因为程序默认地将之前的变量作为输入流。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170909.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月18日 下午1:46
下一篇 2022年8月18日 下午2:00


相关推荐

  • C#面试题及答案_c++面试题库

    C#面试题及答案_c++面试题库1.值变量/引用变量参考链接:https://www.cnblogs.com/bakuhert/articles/5878086.html2. 装箱/拆箱    装箱在值类型向引用类型转换时发生,拆箱在引用类型向值类型转换时发生,装箱操作和拆箱操作是要额外耗费cpu和内存资源的,所以在c#2.0之后引入了泛型来减少装箱操作和拆箱操作消耗。   参考链接:https://blo…

    2022年8月28日
    6
  • R-L模型算法的优缺点_审计重要性特征

    R-L模型算法的优缺点_审计重要性特征1.特征重要性的意义LR模型也就是逻辑回归模型,作为一个简单的常用的模型,其有非常多的有点,除了模型简单,容易实现分布式,还有一个重要的优点就是模型的可解释性非常好。因为每个特征都对应一个模型参数wiw_{i}wi​,该参数越大,那么该特征对模型预测结果的影响就会越大,我们就说该特征就越重要,因此LR模型的特征重要性评估方式就是wiw_{i}wi​的大小。2.逻辑回归模型特征重要性及排序Ta…

    2022年10月8日
    5
  • OpenClaw-VSCode:在 VS Code 里玩转 OpenClaw,远程管理+SSH 双剑合璧

    OpenClaw-VSCode:在 VS Code 里玩转 OpenClaw,远程管理+SSH 双剑合璧

    2026年3月13日
    3
  • 字符串和字符串数组

    字符串和字符串数组文章目录字符串字符串输出字符串常用方法计算字符串的长度字符串拼接字符串拷贝字符串比较字符串数组字符串用双引号引起来的就是字符串 字符串由字符组成字符串使用 s 格式化输出字符串以 0 结尾 没有 0 就不是字符串只要是用双引号括起来的都是字符串字符串的本质就是数组注意 字符串变量和普通的字符数组有一定的区别 C 语言规定 字符串必须以 0 结尾 作为字符串的结束符号 所以字符串变量的元素

    2026年3月20日
    2
  • Field XXX in XXXX required a bean of type XXXX that could not be found

    Field XXX in XXXX required a bean of type XXXX that could not be found

    2022年4月2日
    60
  • Qt 资料大全[通俗易懂]

    Qt 资料大全[通俗易懂]全网最强整理,Qt官网、编码风格、GitHub&Third-Party、社区论坛、博客、书籍等资源,应有尽有。

    2022年7月17日
    24

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号