多个字符串的不同输出形式的区别 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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值