栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C/C++ 对于字符串输入和输出的函数gets(),fgets(),getline(),puts(),cin,cout的一些看法

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C/C++ 对于字符串输入和输出的函数gets(),fgets(),getline(),puts(),cin,cout的一些看法

C/C++ 对于字符串输入和输出的函数gets(),fgets(),getline(),puts(),cin,cout的一些看法

对于C/C++中字符串,不论是输入和输出和一些基本的操作都是非常麻烦,细节特别多,学习字符串的过程中,我们首要解决的问题就是结局最基本的输入和输出问题。只有传入数据我们才能进一步对数据进行分析操作。
首先对于字符串的存在形式,是有两种类型的,一种类型是字符数组,另一种类型是string,第二种类型需要加头文件才能更好使用cstring,两者的区别,最通俗的来讲,字符数组能做的,string都能做;string能做的,字符数组不一定能做,所以请直接用string就完事!
一、其次对于字符串的输入,我建议先判断输入格式是什么,为什么这样说,我们看下各个输入:
1.cin:cin是不能读入空格的,或者说cin遇到空格就会停止,因此输入格式中没有空格,我会优先选择cin,有空格的话cin只能读取到空格之前的部分
2.getline(cin,s),比较推荐,可以读取空格,不过使用前还是建议看看输入格式
3.gets(),已经被淘汰了
4.fgets()读入一行数据,不过他会读入你最后提交按下的回车键,这会导致什么结果呢?也就是说你得到的字符串长度总是比你输入的大1,这就可烦人,你只能在跑for循环遍历的时候将最后的换行符给过滤掉,很不建议这个
结论:所以先判断输入格式有没有空格,有getline,没有cin

二、我们看下输出,输出主要是cout与puts,cout大家都很熟悉了,下面来介绍一个puts
puts函数:属于C语言范畴,但是C++也可以使用,是一个只能输出字符串的函数,但是puts可以输出空格,这个它他的一个特性。不过我用puts输出拼接的字符串是经常报错
相比较来说,cout的功能非常的给力啊,我比较推荐输出用cout,对于网上说的cout的不能输出空格,我实验的结果并不是这样,cout是可以输出空格的

总结:省流大师:首先表示用string,其次输入判断首先输入格式,有空格用getline没有用cin,最后说出用cout

真的是困扰我好长时间了,用fgets函数输入一直给我出问题,用puts输出也是一直有问题,不吐不快

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/311906.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号