问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

getchar()不是只能得到一个字符吗,为什么还能用来判断输入一段字符?

发布网友 发布时间:2022-05-15 16:36

我来回答

5个回答

热心网友 时间:2024-02-25 07:46

getchar()它确实每次只能读取一个字符,但是循环下一次遇到getchar()其实是从缓冲区读取用户上一次输入的字符串剩下的字符,直到遇到'\n'才结束

如果没有设定'\n'这个条件,那么接下来的getchar()才是再一次键盘输入,所以用户才会产生"每次出来一个字符,并且下一次循环是再次输入"这种错觉。

扩展资料:

getchar()函数原理

getchar由宏实现:#define getchar() getc(stdin)。getchar有一个int型的返回值,当程序调用getchar时,程序就等着用户按键。

用户输入的字符被存放在键盘缓冲区中,直到用户按回车为止,当用户键入回车之后,getchar才开始从stdin流中每次读入一个字符。

参考资料来源:百度百科-getchar()



热心网友 时间:2024-02-25 07:47

getchar()它是这样的
它确实每次只能读取一个字符
但是循环下一次遇到getchar()
其实是从缓冲区读取你上一次输入的字符串剩下的字符,直到遇到'\n'才结束
如果没有设定'\n'这个条件,那么接下来的getchar()才是再一次键盘输入
所以你才会产生"每次出来一个字符,并且下一次循环是再次输入"这种错觉

热心网友 时间:2024-02-25 07:47

这里的getchar是逐个判断字符!
并不是判断字符串!
while((c=getchar())!='\n') /*当第一个字符不是回车时开始循环*/
{
if(c>='a'&&c<='z'||c>'A'&&c<='Z')
letters++; /*第一个字符是字母letters开始计数*/
else if(c==' ')
space++; /*是空格空格就开始计数*/
else if(c>='0'&&c<='9')
digit++; /*若是数字数字就开始计时*/
else
other++;/*否则其他的开始计数*/

热心网友 时间:2024-02-25 07:48

while((c=getchar())!='\n')

是循环语句,一次判断一个字符,直到读入的是回车

热心网友 时间:2024-02-25 07:49

c=getchar()每次接受的仍然是一个字符,但是可以利用while进行循环,循环的条件是getchar()接受的字符不为‘\n’,否则退出循环。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
离职几个月公司发短信说我离职生效叫我回去补办离职交接手续怎么 开除员工不办手续违法吗 辞退员工没有办手续违法吗 苹果13/6.1录制两个人脸,后面换锁屏密码认证还有什么提醒,或者是两个人... 很规律很威严的词语是什么 我老了又无能 想有个爱我一辈子的 到今没 就一个人 把爱放心里 用数字... 日语N2 20天复习够吗 为什么泥工先于木工 泥工做好隔多久做木工 从泥工做好到做木工,需要等待多久? 水泥操作人员作业流程是怎样的? 降钙素测定的临床意义 QQ可以注销么? 细胞因子活化杀伤(CIK)细胞输注是什么意思? 现在QQ还可以注销吗 手机QQ有能同时登陆两个Q号的吗? 一部手机的qq可以同时上两个号么 一个新媒体运营小白从0开始怎么做到1 小学数学北师大版三年级上册八认识小数《存零用钱》比赛获奖教案优质课公开课优秀教案 数学公开课课前游戏 小学数学北京版四年级上册 一 大数的认识《大数的读法和写法》优质课公开课教案教师资格证面试试讲教案 和田玉手镯有明显大坑说明什么 玉镯浸在水里会产生很多气泡,说明什么呢? 碧绿碧绿的玉镯戴时磕磕碰碰 有的地方出现小白点 请问这是不是说明不是真玉 ? 最近买了个淡紫色的玉镯可上面有一条绿丝,是不是说明这块玉是劣质的呢? 玉镯值多少,详细说明下…… 岫玉圈口怎么看 真皮沙发坐着舒服吗 了解一下素寓住宅家具的真皮沙发舒服不? 最近看中了月影真皮沙发系列的纳帕皮沙发,这款沙发坐着舒服吗? 征信报告有必要给吗?非常感谢 Getchar能否一次接收一个字符串? c语言getchar()能接受多个字符? C语言 getchar只能读放一个字符 但为什么,, 怎样做出好吃简单的豆花肥肠? C语言中getchar能接受多少个字符? 请问,软考中级的网络工程师好考么,是不是都是背的东西,我是学.net的,但是学的不好 getchar函数是一个一个接收的吗?比如输入34先接收3,如果后面还有getchar()的话是接 getchar()只能接收一个字符? 国内有多少癫痫病人? 全国有多少癫痫患者? 癫痫病患者占总人口的多少 癫痫的患病率是多少 全国有多少癫痫病患者 癫痫病多少个人中有一个 现在患有癫痫病的人多么,是不是属于不常见的疾病啊 全国到底有多少癫痫病患者,都有在哪里治好的 癫痫疾病医院 如何将电脑玩游戏时提速? 得了癫痫病还能治好吗 全国癫痫病是怎么治疗的?