scanf () 问题

2023-03-07 08:41

2个回答
用2个号来回答你的问题:
你的scanf("空格%c")处理过程是这样的
scanf会从buffer里读取字符:1.如果第一个字符是空格(回车tab),符合空格格式的要求,则赋(或叫吸收)给空格格式,继续第2个字符如果是空格(回车tab),就把他赋给空格格式,直到遇到不是空格(回车tab)才结束对空格格式的赋值(这里可以把空格格式看做是长度无限制的).接着进行下一个格式%c的赋值,%c的赋值就从你刚才判断的不是空格的那个字符开始,把那个不是空格的字符赋给%C,因此这样的情况%C 里不会是空格
2.如果第一个字符不是空格(回车tab),则空格格式的匹配失败继续匹配%c格式,同样把这个不是空格的字符赋给了%c格式。这种情况%c里最终也不是空格。
由于2种情况你的%c里都不可能是空格,因此%c永远不可能是空格。
其实所有的格式控制符都吸收的是满足他们格式要求的字符,但是他们长度一般是有限度的,而空格格式控制符长度是无限制的所以他可以吸收所有连续的空格回车tab。
当然无法退出了...永远是' '空格...ch是你输入的第一个字符..根据你的格式..第一个字符又必须是空格...汗..
相关问答
C scanf("%[^\n]", str)的问题
1个回答2022-08-21 22:27
你想用正则?为了读空格? 个人感觉没有额外的库,C函数的正则还是挺悲剧的 如果只是为了处理特殊字符,自己getc吧 如果你坚持正则,把字符串读进来,然后考虑用regex.h定义的函数 或者用C++的流...
全文
scanf("%[^n],c)具体含义
1个回答2023-02-15 07:07
%[^\n] 哈哈 这个不是刚才我回答那个问题么 ^ 这个符号的意思 是取反 然后%[^\n] 表示除了 换行符号 都可以 存入 字符串 c中 因为是数组 &的 可用 可 不用 你的理解是对的...
全文
scanf("%[^n],c)具体含义
1个回答2022-09-30 01:14
scanf("%*c%*[^\n]"); 这条语句中%*c表示, 读入一个字符,但是这个字符不保存到变量里,所以后面不需要有对应的char型的参数。%*[^\n]表示读入一个字符串,字符串里的字符只能...
全文
姓氏:向,的由来。为什么姓向的出名人物就那么少呢?
1个回答2024-06-20 08:15
  向(Xiàng)姓源出有四:     1、出自姜姓,为炎帝神农氏之后,以祖名为氏。据《史记》的记载,神农氏有裔孙名向,被封为诸侯,其后代子孙以向为姓,遂成向姓。     2、出自祁姓,为帝尧的...
全文
古代卢氏有哪些
1个回答2024-06-20 08:15
呵呵!我也姓卢哦! 我看了我们的家谱,在唐朝时我们有一个先人做过宰相级别的管! 水浒中有个卢俊义! 初唐四杰的卢照邻 当然我们卢家还有的光辉历史具体如下: 卢 芳:东汉曾被封为代王,他在新莽末年,...
全文
杨梅 小说 的作者是谁
1个回答2024-06-20 08:14
是不是 黄春华 的杨梅,不知道你说的是哪一个唉
有志者事竟成的名人例子有什么
1个回答2024-06-20 08:13
有志者事竟成的名人例子有邓亚萍练球,陈胜起义,王献之练字等等。 1、邓亚萍练球:邓亚萍喜欢打乒乓球,但由于身材矮小,手脚短小,被国家队拒绝了。但她没有气馁,而手液晌是刻苦练习,化失败为动力,用持...
全文
稻草芭比是什么时候开始直播的?
1个回答2024-06-20 08:12
稻草芭比可以说是中国游戏解说界的鼻祖之一了。2005年制作解说的“魔兽十大经典战役”,相信当年的魔兽迷们没有没看过的吧。甜美优雅的声音、专业的讲解,在当年那个以录制视频为主的年代,多少玩家从她这里...
全文
哥斯拉漫画有几部?
1个回答2024-06-20 08:11
截止到2019年2月,哥斯拉一共有28部。其中,昭和系列15部,平成系列7部,千禧年系列4部,非东宝作品2部。 1、昭和系列:第1部《哥斯拉》( 1954年) 2、昭和系列:第2部《哥斯...
全文
古代有几个劫富济贫的人
1个回答2024-06-20 08:10
其实历史上劫富济贫的事情并不多.劫富济贫的英雄大多都存在于传说和小说中,说书人的口中.其实历史上个人行动的劫富济贫还是有的.而且每朝每代都有,但是上规模的几乎没有存在过.说说历史上有规模的几次事情吧。...
全文
扫码下载APP
听书听课听播客,随时随地陪伴你
热门问答