C++字符串常用输入方法
字符串常用输入方法总结
前言:
个人是从两个角度去比较思考总结的
(1)能否输入空格
(2)输入支持的是
①单个字符
②还是char[]字符数组
③还是string类字符串
1.scanf("%c",&s);
只输入char型的单个字符
#include<iostream>
#include <cstdio>
using namespace std;
int main()
{char s;scanf("%c",&s);cout<<s;
} //输入:abc
//输出:a
2.scanf("%s",s);
输入一个字符串,但不包含空格
只能输入char型字符数组,不能输入string类字符串
#include<iostream>
#include <cstdio>
using namespace std;
int main()
{char s[100];scanf("%s",s);cout<<s;
} //输入:abc
//输出:abc//输入:abc abc
//输出:abc
3.getchar()
getchar()只能输入char型的单个字符
putchar()向终端输出一个字符
getchar()与putchar()函数包含在头文件<stdio.h>里,属于C语言的函数,C++也可以兼容,但不建议使用。
#include<iostream>
#include <cstdio>
using namespace std;
int main()
{char s;s=getchar();//不能写成getchar(s);cout<<s;
} //输入:abc
//输出:a
4.gets()
接受一个字符串,可以接收空格,直到遇到换行停止输出,需包含#include<cstring>
#include<iostream>
#include <cstdio>
using namespace std;
int main ()
{char s[20];gets(s); //不能写成s=gets();cout<<s<<endl;
}//输入:abcabcabc
//输出:abcabcabc//输入:abc abc abc
//输出:abc abc abc
**注意:**C++11标准后,已经不支持gets()函数了。但C语言中gets()提交代码时可以使用。
5.cin>>
接受一个字符串,遇“空格”、“Tab”、“回车”都结束
可以输入char型字符数组,也能输入string类字符串
#include<iostream>
using namespace std;
int main ()
{char s[20];cin>>s;cout<<s<<endl;
}//输入:abcabcabc
//输出:abcabcabc//输入:abc abc abc遇空格结束,所以不能输入空格
//输出:abc
6.cin.get()
用法一:能获取输入一个字符
#include<iostream>
using namespace std;
int main ()
{char s;s=cin.get();cout<<s<<endl;
}//输入:abc
//输出:a
用法二:也可以输入字符数组并且可以接受空格
只能输入char型字符数组,不能输入string类字符串
#include<iostream>
using namespace std;
int main ()
{char s[100];cin.get(s,99);//输入范围可以写大点cout<<s<<endl;
}//输入:abcabcabc
//输出:abcabcabc//输入:abc abc abc
//输出:abc abc abc
用法三:cin.get()可以吃掉回车,可以回车后再输入一串字符
#include <iostream>
using namespace std;
int main()
{char s[10];cin.get(s,10);cin.get();//用于吃掉回车,相当于getchar();cout<<s<<endl;cin.get(s,5);cout<<s<<endl;system("pause");return 0;
}//输入abcdefghi
//输出abcdefghi
//输入abcde
//输出abcd
//请按任意键继续
7.cin.getline()
接受一个字符串,可以接收空格并输出
只能输入char型字符数组,不能输入string类字符串
cin.getline()实际上有三个参数,cin.getline(接受字符串,接受个数,结束字符),当第三个参数省略时,系统默认为’\0’ 是’/n’
#include<iostream>
#include <string>
using namespace std;
int main ()
{char s[100];cin.getline(s,10); cout<<s<<endl;
}//输入:abcabcabc
//输出:abcabcabc//输入:abc abc abc
//输出:abc abc a 只输入了10个长度的字符串 ,其中最后一个为'\0',所以只看到9个字符输出;
8.getline()
接受一个字符串,可以接收空格并输出,getline()顾名思义就是将整行的所有字符读到字符串中
注意输入字符串的是string类的字符串,不能输入char型字符数组,需头文件#include<string>
getline()和cin.getline()类似,但是cin.getline()属于istream流,而getline()属于string流,是不一样的两个函数
#include<iostream>
#include <string>
using namespace std;
int main ()
{string s;getline(cin,s); cout<<s<<endl;
}//输入:abcabcabc
//输出:abcabcabc//输入:abc abc abc
//输出:abc abc abc
9.scanf("%[^\n]",s)
接受一个字符串,可以接收空格并输出,头文件#include <cstdio>
只能输入char型字符数组,不能输入string类字符串
#include<iostream>
#include <cstdio>
using namespace std;
int main ()
{char s[100];scanf("%[^\n]",s);cout<<s<<endl;
}//输入:abcabcabc
//输出:abcabcabc//输入:abc abc abc
//输出:abc abc abc
^表示"非",[^\n]
表示读入换行字符就结束读入。这个是scanf的正则用法,我们都知道scanf不能接收空格符,但是使用%[^\n]
就可以了。
C++字符串常用输入方法相关推荐
- 一次性汇总了 30+ 字符串常用处理方法
今天这篇推文我们就汇总下Python中常用的字符串处理小技巧,字符串在Python数据处理中是非常常见且极易忽略的常用数据类型,且Python本身也提供大量运算符.函数和方法来处理字符串.话不多说,接 ...
- 总结 | Java字符串常用操作(方法)
Java字符串 Java String类 创建字符串 字符串长度获取 连接字符串 字符串查找 获取指定位置的字符串 获取子字符串 去除字符串首尾的空格() 字符串替换 判断字符串的开始与结尾 判断字符 ...
- CSDN中空格的常用输入方法
小伙伴们在撰写CSDN博客时,常常需要打印空格,下面是常用两种方法: 第一种:切换输入法到全角符号 一般为shift+空格键,如果不能切换,因为快捷键没有打开,打开方式参考这里链接: https:// ...
- python字符串常用的方法_python字符串常用方法
1. isalnum() :判断字符串所有的字符都是字母或者数字.返回true和false In [1]: str1='jiangwei520' In [2]: str2='jiang wei' In ...
- python字符串三种常用的方法或函数_python中字符串常用的函数
s ="hello world" s[2] >>> "l" 索引 s.index("l") >>> 2 ...
- python对输入的字符串进行解析_python数据类型_字符串常用操作(详解)
这次主要介绍字符串常用操作方法及例子 1.python字符串 在python中声明一个字符串,通常有三种方法:在它的两边加上单引号.双引号或者三引号,如下: name = 'hello' name1 ...
- C++字符串的几种输入方法(string和字符数组)
ps:本文大部分内容参考于这篇博客,在这里加入了自己对这些函数在字符数组和string变量的理解和总结. C++中的输入大致有6种方法:cin,cin.get(),cin.getline(),gets ...
- java的知识点15——String基础、String类和常量池、String类常用的方法、字符串相等的判断、组合模式
String基础 1. String类又称作不可变字符序列. 2. String位于java.lang包中,Java程序默认导入java.lang包下的所有类. 3. Java字符串就是Unicode ...
- java面向对象使用字符串_java面向对象中的String类中12种常用的方法
1.字符串与字符数组的转换 字符串可以使用toCharArray()方法变成一个字符数组,也可以使用String类的构造方法把一个字符数组变成一个字符串. public class StringAPI ...
最新文章
- mysql里条件语句和循环语句_MySQL与Oracle 差异比较之四条件循环语句
- 点评----和时代专线
- ubuntu18 常用命令
- 4个空格和一个tab有什么区别_为什么有时候会放屁连连?这4个原因,一个都别放过...
- 宝宝树发行价为6.8港元 11月27日在港交所正式挂牌
- 不属于python数据类型的是_python基础3 ---python数据类型二
- linux 并行 模式,并行设计模式-Master/Worker
- 我的dota之路(下)
- Linux3.4内核的基本配置和编译
- 传输层协议(13):拥塞控制(2)
- word安全模式解除
- 量子计算机宋超,蒿杰团队实感计算架构助力20超导量子比特薛定谔猫态制备-资讯-知识分子...
- Selenium控制已打开的IE浏览器
- oracle rman list,Oracle RMAN的show,list,crosscheck,delete
- Linux(深度deepin)下安装jdk、tomcat、idea
- 大数据可视化管理antV使用详解
- python破解zip压缩包密码
- 使用对比学习处理大规模多模态单细胞数据
- 解决Post请求中文乱码问题
- MYSQL:时间粒度(每30s、每1分钟、每5分钟、每1小时、每1周、每1月、每1季度、每1年)
热门文章
- 任务调度框架Quartz用法指南(超详细)
- accept()函数说明
- 全文搜索 full-text search
- poi处理word内容的公式_Java 使用 POI 操作 XWPFDocument 中的 XWPFParagraph(段落)对象的属性略解 Wor - 链滴...
- 【算法】分治策略:芯片测试
- Ashampoo WinOptimizer 2021
- 定时自动关闭程序、打开网页和隐藏任务计划
- 爬虫的基本原理:网络爬虫、爬虫基本流程、解析方式、保存数据
- VMware安装虚拟机详细教程
- long类型强转成int类型解析