输入输出知识点和问题超全总结(持续更新中)
- Scanf函数返回值就是读出的变量个数,如:scanf( “%d %d”, &a, &b ); 如果只有一个整数输入,
返回值是1,如果有两个整数输入,返回值是2,如果一个都没有,则返回值是-1。
- EOF是一个预定义的常量,等于-1
- cin>>
用法1:输入一个数字或字符
用法2:接收一个字符串,遇“空格”、“TAB”、“回车”就结束
- cin.getline()
用法:接收一个字符串,可以接收空格并输出
- getline()
用法:接收一个字符串,可以接收空格并输出,需包含“#include<string>”
注意的问题:
1、cin.getline()属于istream流,而getline()属于string流,是不一样的两个函数
2、当同时使用cin>>,getline()时,需要注意的是,在cin>>输入流完成之后,getline()之前,需要通过的方式将回车符作为输入流cin以清除缓存,如果不这样做的话,在控制台上就不会出现getline()的输入提示,而直接跳过,因为程序默认地将之前的变量作为输入流。
str="\n";
getline(cin,str);
C语法:
char buf[20]; gets(buf);
C++语法:
如果用string buf;来保存:
getline( cin , buf );
如果用char buf[ 255 ]; 来保存: cin.getline( buf, 255 );
- scanf(“ %s%s”,str1,str2),在多个字符串之间用一个或多个空格分隔;
若使用gets函数,应为gets(str1); gets(str2); 字符串之间用回车符作分隔。
通常情况下,接受短字符用scanf函数,接受长字符用gets函数。
getchar函数每次只接受一个字符,经常c=getchar()这样来使用。
- cin.getline的用法:
getline 是一个函数,它可以接受用户的输入的字符,直到已达指定个数,或者用户输入了特定的字符。它的函数声明形式(函数原型)如下:
istream& getline(char line[], int size, char endchar = '\n');
不用管它的返回类型,只关心它的三个参数:
char line[]: 就是一个字符数组,用户输入的内容将存入在该数组内。
int size : 最多接受几个字符?用户超过size的输入都将不被接受。
char endchar :当用户输入endchar指定的字符时,自动结束。默认是回车符。
结合后两个参数,getline可以方便地实现: 用户最多输入指定个数的字符,如果超过,则仅指定个数的前面字符有效,如果 没有超过,则用户可以通过回车来结束输入。
char name[4];
cin.getline(name,4,'\n');
由于 endchar 默认已经是 '\n',所以后面那行也可以写成:
cin.getline(name,4);
- 读入字符串
while(scanf("%s",str)!=EOF)
{ }
while(gets(str)!=NULL)
{ }
- 读入多个字符串(注意读取的下标)
while(cin>>a+1)
{
cin>>b+1;//多次从下标1开始读入
int alen=strlen(a+1);//由于读入时从下标1开始,所以读取长度业也从1开始
int blen=strlen(b+1);
持续更新中·······
欢迎讨论交流~非诚勿扰哦 邮箱:1308989543@qq.com
输入输出知识点和问题超全总结(持续更新中)相关推荐
- xv-6 EX(学习路径 超全总结 持续更新中)
这里写目录标题 xv-6 EX2 基础知识 trace sysinfo xv-6 EX1 read xargs find 详解xv-6之ls xv-6 EX2 基础知识 图片说明了每个文件在[从用户态 ...
- 2020年拼多多校招面试题及答案-最全最新-持续更新中(2)
大家好我是好好学习天天编程的天天 一个整天在互联网上种菜和砍柴的程序员~ 2020年拼多多校招面试题及答案-最全最新-持续更新中(2) 2020年拼多多校招面试题一面 2020年拼多多校招面试题一面- ...
- 2020年拼多多校招面试题及答案-最全最新-持续更新中
大家好我是好好学习天天编程的天天 一个整天在互联网上种菜和砍柴的程序员 2020年拼多多校招面试题及答案-最全最新-持续更新中 2020年拼多多校招面试题一面-牛客网 2020年拼多多校招面试题二面- ...
- 2019 CSS经典面试题(史上最全,持续更新中...)
这些是我自己在学习过程中总结的一些知识点,本篇文章我将以面试题的形式分享给大家,希望对大家有所帮助,本文篇幅较长,您若认真看完,并且反复阅读,我相信对您的学习或者是面试,都会有一定帮助,同时希望大家批 ...
- html盒子整体向下移动,盒子上下左右居中方法全(持续更新中)
总是忘记这几个方法,今天来记录一下 一.已知大小盒子:左右居中 1. 使用定位,左右拉取方法: html: css: .box{width: 300px;height: 300px;border: 1 ...
- 算法与数据结构知识点及面试题总结(持续更新中)
目录 1.经典排序复杂度分析及常考排序算法 2.判断链表是否有环 3.当排序几十个数的时候用哪种,几十万个数的时候用哪种? 4.判断一个字符串是否为另一个字符串的子串? 5.写二分查找 6.哈希表原理 ...
- 数据结构与算法 知识点总结,超全!!!
总结了一下数据结构算法的非常基础的知识,帮助到你的话请关注我呀,持续更新中-- 第二章 数据结构与算法 2.1 算法 2.1.1算法的基本概念 2.1.2算法设计的基本方法 2.1.3算法复杂度 2. ...
- 操作系统面试题(史上最全、持续更新)
尼恩面试宝典专题40:操作系统面试题(史上最全.持续更新) 本文版本说明:V28 <尼恩面试宝典>升级规划为: 后续基本上,每一个月,都会发布一次,最新版本,可以联系构师尼恩获取, 发送 ...
- 【Vue全家桶+SSR+Koa2全栈开发】项目搭建过程 整合 学习目录(持续更新中)
写在开头 大家好,这里是lionLoveVue,基础知识决定了编程思维,学如逆水行舟,不进则退.金三银四,为了面试也还在慢慢积累知识,Github上面可以直接查看所有前端知识点梳理,github传送门 ...
- 架构设计面试题 (史上最全、持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 高并发学习社群 - 疯狂创客圈奉献给大家: 经典图书 - <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 + 涨薪必备 ...
最新文章
- 基于SNN脉冲神经网络的FPGA实现介绍
- 选择屏幕——按钮、单选复选框
- C++ 手动开O2优化
- [转].NET 数字格式化:忽略末尾零
- 3d激光雷达开发(圆柱分割)
- 人脸关键点:TCDCN-Facial Landmark Detection by Deep Multi-task Learning
- 索尼推出 PlayStation 漏洞奖励计划,最严重漏洞5万美元起步
- base64转码原理
- 数据库系统是采用数据库技术的计算机系统,1数据库系统是采用了数据库技术的计算机系统.doc...
- 敏捷测试的关键成功要素
- Windows及应用学习笔记
- Disturbed People CodeForces - 1077B
- 影响蜘蛛抓取的因素有哪些?
- 速收藏 !回复审稿人意见时常用的英文套话
- 钱钟书是怎样做读书笔记的 杨绛
- Hadoop ResourceManager:
- 火辣健身产品体验报告
- 比例电磁阀(一)介绍和流量特性
- 并行计算中的Fortran语言
- 解决UNITY3D导入模型贴图材质丢失
热门文章
- dict( )、zip( )函数——python小练
- java 设置全局热键_第三方包jintellitype实现Java设置全局热键
- php7安装详解、,php7安装详解(windows环境)
- 使用 jdk 1.8 lambda forEach 对 ArrayList 遍历,数组越界,索引是负数 -15591
- C语言程序书写中 每行必须有分号,石家庄铁道大学C语言程序设计习题集.pdf
- 嵌套查询和连接查询的效率_LeetCode 查找:groupby+having/嵌套查询/连接
- python reduce函数怎么用_python内置函数reduce
- 【转】解决Navicat 报错:1130-host ... is not allowed to connect to this MySql server,MySQL不允许从远程访问的方法 .
- LINUX 查看分区UUID的两种方法
- UI设计师——你是什么设计师?