多个字符串的不同输出形式的区别 gets getchar getch

2024-04-07 09:08

本文主要是介绍多个字符串的不同输出形式的区别 gets getchar getch,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

gets和getline

http://blog.sina.com.cn/s/blog_624bda610100vevn.html 

http://www.cnblogs.com/greencolor/archive/2010/03/17/1688051.html

http://my.oschina.net/u/270597/blog/301684

gets(p);//scanf cin 空格tab也是分隔符   gets换行才是分隔符但不接受换行

cin输入的字符串遇到空格 tab就终止了 cin如果输入很多个字符串则常与vector<strng>连用

getline(cin, input);和gets功能用法类似不过这个是c++里的string类常连用。gets是c语言的和char[]常连用

cin>>input;getline(cin, input);等价于gets 但前者更好用是c++思想调用程序就行了

1、题目描述

•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。


输入描述:

连续输入字符串(输入2次,每个字符串长度小于100)



输出描述:

输出到长度为8的新字符串数组


输入例子:
abc
123456789

输出例子:
abc00000
12345678
90000000
连续输入中间没空格字符串的问题则用cin输入字符串 按空格、tab、回车结束 与string类连用

不带空格的单字符串用cin输入     也可以用gets和getline比较烦

2、题目描述

写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。


输入描述:

输入一个有字母和数字以及空格组成的字符串,和一个字符。



输出描述:

输出输入字符串中含有该字符的个数。


输入例子:
ABCDEF
A

输出例子:
1
//接受一个有字母和数字以及空格组成的字符串  带空格的单字符串用getline输入 与string类连用 见别的博文



题目描述

计算字符串最后一个单词的长度,单词以空格隔开。


输入描述:

一行字符串,非空,长度小于5000。



输出描述:

整数N,最后一个单词的长度。


输入例子:
hello world

输出例子:
5
这个可以用cin(vector)也可以用gets ( getline


getch 在c++和c语言中都可以用,getch();让程序暂停,接收任何字符然后开始运行。如果出现下面错误解法方法如下:

c(84): error C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details.

可以看到微软建议用_getch() 替换getch()
 


http://bbs.csdn.net/topics/392029

http://bbs.bccn.net/thread-321865-1-1.html

http://bbs.csdn.net/topics/10065199

getch getchar区别:

这里特别说明一下,这段代码是在windows平台下,才会产生如上所说的差异。原因是windows平台下ENTER键会产生两个转义字符 \r\n, 因此,getch()读到 \r 时就会返回他的ASCII码13。

奇怪的问题是为什么getchar()会返回10呢?前面不是说过返回第一个字符吗?

这的确会让人费解。实际上产生这个结果的原因是,getchar()把输入的 \r\n 转换成了 \n ,所以返回的是 \n 的ASCII码 10。为什么会这样呢?因为前面说过getchar()是C语言标准库函数,而在unix系统中ENTER键只产生 \n 。顺便说一下,在MAC OS中ENTER键将产生 \r ,同样也会被替换成 \n。这样,不管在什么平台下,getchar()都会得到相同的结果,所以说getchar()标准库函数。
http://www.cnblogs.com/candyming/archive/2011/11/25/2262877.html
下面的好
http://zhidao.baidu.com/link?url=yAV5xmd3KXyLvhNKmHCwwMREI2lmyJdQfekOM-dayom08m5UqBVIRT27rpUzvuW18XKW-V1QXFP5Gl8JnIalxDt7dbY_zI8Ojlfym9_gJnS

http://zhidao.baidu.com/link?url=rXHLb-OQsoQFL-2SINPXaJXmk7xTY8NRxvFuXrLotaivnNUWjRGE4NI7UQnL41tgx_Zp6kWkVxpvszuRRqt5GK

http://zhidao.baidu.com/link?url=wIA_8gXum1WS3-B8hCysUESLBIKePQdutmfyAUb5O39auqKpJNDvy1UUz1d2DF2J4HWOMXrAC_FXfQp6fmsa4q

http://blog.sina.com.cn/s/blog_692df23e0100n5yt.html

这篇关于多个字符串的不同输出形式的区别 gets getchar getch的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/882184

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

C# $字符串插值的使用

《C#$字符串插值的使用》本文介绍了C#中的字符串插值功能,详细介绍了使用$符号的实现方式,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录$ 字符使用方式创建内插字符串包含不同的数据类型控制内插表达式的格式控制内插表达式的对齐方式内插表达式中使用转义序列内插表达式中使用

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清

详解MySQL中JSON数据类型用法及与传统JSON字符串对比

《详解MySQL中JSON数据类型用法及与传统JSON字符串对比》MySQL从5.7版本开始引入了JSON数据类型,专门用于存储JSON格式的数据,本文将为大家简单介绍一下MySQL中JSON数据类型... 目录前言基本用法jsON数据类型 vs 传统JSON字符串1. 存储方式2. 查询方式对比3. 索引

MySQL字符串常用函数详解

《MySQL字符串常用函数详解》本文给大家介绍MySQL字符串常用函数,本文结合实例代码给大家介绍的非常详细,对大家学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql字符串常用函数一、获取二、大小写转换三、拼接四、截取五、比较、反转、替换六、去空白、填充MySQL字符串常用函数一、

JAVA覆盖和重写的区别及说明

《JAVA覆盖和重写的区别及说明》非静态方法的覆盖即重写,具有多态性;静态方法无法被覆盖,但可被重写(仅通过类名调用),二者区别在于绑定时机与引用类型关联性... 目录Java覆盖和重写的区别经常听到两种话认真读完上面两份代码JAVA覆盖和重写的区别经常听到两种话1.覆盖=重写。2.静态方法可andro

C++中全局变量和局部变量的区别

《C++中全局变量和局部变量的区别》本文主要介绍了C++中全局变量和局部变量的区别,全局变量和局部变量在作用域和生命周期上有显著的区别,下面就来介绍一下,感兴趣的可以了解一下... 目录一、全局变量定义生命周期存储位置代码示例输出二、局部变量定义生命周期存储位置代码示例输出三、全局变量和局部变量的区别作用域

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

MyBatis中$与#的区别解析

《MyBatis中$与#的区别解析》文章浏览阅读314次,点赞4次,收藏6次。MyBatis使用#{}作为参数占位符时,会创建预处理语句(PreparedStatement),并将参数值作为预处理语句... 目录一、介绍二、sql注入风险实例一、介绍#(井号):MyBATis使用#{}作为参数占位符时,会