C/C++字符串输入方法比较(带回车不带回车输入)
1.scanf
charstr[15];
scanf("%s",str);
abc 123
1) 不读入空格和回车,从空格处结束
2) 输入字符串长度超过字符数组元素个数不报错
3) 当输入项为字符指针时,指针必须已指向确定的有足够空间的连续存储单元
4) 当为数组元素地址时,从此元素地址开始存放
printf("%s",地址值)
输出时遇到第一个'\0'为止
2.gets和puts函数
开头必须stdio.h;
Gets输入时包括空格符,遇到回车结束
Puts遇到第一个‘\0’结束,自动加入换行符
3.fgets
而使用fgets函数时,只要第二个参数正好等于第一个参数传给它的数组的字节个数,那么fgets函数不会写出数组边界。所以,fgets函数是最好的选择。
fgets(...)读入文本行时的两种情况。
1).如果n大于一行的字符串长度,那么当读到字符串末尾的换行符时,fgets(..)会返回。并且在s的最后插入字符串结束标志'\0'。而s缓冲区剩余的位置不会再填充。
example:
123abc
fgets(s,10,fp);
此时,读入七个字符,123abc\n,实际上还有最后的'\0',所以,strlen(s)=7;如果要去除末尾的\n,s[strlen(s)-1]='\0';便可。
2). 如果n小于等于一行的字符串的长度,那么读入n-1个字符,此时并没有读入\n因为并没有到行尾,同样在最后会插入'\0'.
example:
123abc
char s[5];
fgets(s,5,fp);
这时读入4个字符,123a,并没有换行符,所以strlen(s)=4.
4.cin
使用空白(空格,制表符和换行符)来定字符串的界的
5.getline()
读入整行数据,它使用回车键输入的换行符来确定输入结尾。
调用方法: cin.getline(str, len);
第一个参数str是用来存储输入行的数组名称,第二个参数len是要读取的字符数。
6.get()
调用方法:cin.get(str, len);
getline将丢弃换行符,而get()将换行符保留在输入序列里,但是字符串中并没有换行符。
使用cin.get()输入多行数据时,中间可以使用get()消除换行符。
int main()
{
char str1[30], str2[30];
cin.get(str1, 30);
cin.get();
cin.get(str2, 30);
cout << "str1: " << str1 << endl;
cout << "str2: " << str2 << endl;
return 0;
}
C/C++字符串输入方法比较(带回车不带回车输入)相关推荐
- Latex常用数学符号输入方法
原文地址: Latex常用数学符号输入方法 问题1:字母上面的上标输入方法 问题2:小写希腊字母的输入方法 问题3:大写希腊字母的输入方法 问题4:二元关系符的表达方式 问题5:二元运算符的表达方式 ...
- C++字符串常用输入方法
字符串常用输入方法总结 前言: 个人是从两个角度去比较思考总结的 (1)能否输入空格 (2)输入支持的是 ①单个字符 ②还是char[]字符数组 ③还是string类字符串 1.scanf(" ...
- python字符串输入_Python输入字符串的方法和实例代码
Python怎么输入字符串 首先,要显示字符串,直接 print(字符串) 就可以显示了. 字符串可以用单引号或者双引号,python中没有字符类型. 多个字符串直接连着写,就表示连接,字符串内部的转 ...
- 几种输入字符串的方法
常见字符串输入收录 一.cin 二.cin.getline() 三.cin.get() 四.getline() 五.getchar() 六.gets() 扩充结论 一.cin 用法一: 最基本,也是最 ...
- python 输入文件名查找_python 查找文件名包含指定字符串的方法
编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出绝对路径. import os class searchfile(object): def __init__ ...
- python 常用字符串 列表元祖字典都 自带的函数方法
上节内容回顾和补充编程语言高级低级Python种类JavaPythoncPython *****pypy字节码 和 机器码Python程序:1. 终端:C:\python35\python.exe D ...
- python中如何输入多行字符_在python中输入多行字符串有哪些方法
在python中输入多行字符串有哪些方法 发布时间:2020-04-11 13:46:24 来源:亿速云 阅读:39 作者:小新 今天小编给大家分享的是在python中输入多行字符串有哪些方法,很多人 ...
- C++中常见的几种输入字符串的方法
C++中常见的几种输入字符串的方法_是赵薰薰呀的博客-CSDN博客_c++输入字符串 可以用的函数 substr substr有2种用法: 假设:string s = "0123456789 ...
- java从键盘输入字符串并求长度_java从键盘输入字符串的方法
java从键盘输入字符串的方法 发布时间:2020-06-29 09:15:07 来源:亿速云 阅读:142 作者:Leah 本篇文章为大家展示了java从键盘输入字符串的方法,代码简明扼要并且容易理 ...
- python中字符串常量可以用任意多个引号括起来_Python---3基础输入方法
一字符串写法 1.单一字符串 用print()在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print('hell ...
最新文章
- docker初体验:docker部署nginx服务
- 一个浙江人的23条经典经商法则
- TIOBE 9月编程语言排行榜
- java基础进阶一:String源码和String常量池
- linux下svn客户端安装及环境配置
- QT设置坐标轴XY轴显示范围方法
- 天正建筑lisp编程接口_编程思想|面向过程的结构化、面向对象的抽象化、泛型编程...
- mysql重新创建测试对象的SQL_MySQL_Sql_打怪升级_进阶篇_测试: SQL随机生成测试数据...
- python装饰器详解-学习笔记-Python装饰器详解
- 《Dreamweaver CS6完美网页制作——基础、实例与技巧从入门到精通》——1.2 网页的基本构成元素...
- textfield tips
- 显示器不亮电源灯闪_台式电脑显示屏不亮指示灯一直闪烁
- hustoj安装学习(2019)
- 银耳椰椰——Alpha冲刺Day08
- Domain Adaptation
- Win10 Synaptics触摸板无法实现双指单击模拟鼠标右键点击的解决办法
- 电动汽车换电池要多少钱?各品牌电池更换费用大起底!
- SpaceShooter打飞机教程笔记(二)
- 极米Z6X Pro怎么样?极米Z6X Pro亮度如何?极米Z6X Pro值得入手吗?
- [转]最速下降曲线:重力场中两点之间曲线更快
热门文章
- 拆分列成多行_把订单按货品拆分成多行(上)
- eclipse 64位_如何安装调试 Java开发工具Eclipse和JDK环境
- 年月跨度_不畏困难,砥砺前行 ——国内最大跨度管桁架工程成功首滑
- Java历经20年沧桑,将持续革新
- 结构体内元素不确定_查漏补缺!高中三年生物最易忽略、易错的30个知识点整理不容错过...
- python下拉菜单_自定义Django Form中choicefield下拉菜单选取数据库内容实例
- 执行公式_一学就会,一吃就瘦,超简单又好执行的减肥食谱公式!
- python训练手势分类器_python-Keras分类器的准确性在训练过程中稳定...
- android 启动服务同时传递数据,Android Studio开发基础之起动Service,并通过从Activity向Service传递数据...
- java 标准输入流 关闭 打开_java--标准输入输出流