scanf("%c",&ch)什么意思
4个回答
展开全部
1、%c是字符型
2、%ch则是输入一个字符后,必须加上一个h
比如:
scanf("%*[^\n]");
里面的[^\n]表示:除了'\n'以外的,[^a]就是除了'a'里面的*表示:通配符,所有字符.
然后合起来就是取出所有除了\n之外的字符scanf("%*c");
就是取出一个字符,一般取出就是刚刚上面那句没有取出的'\n'
为什么这么做是因为scanf读取数据的机制,scanf是从输入缓冲区取数据的
而它取数据的时候会逐个查看,可以理解为贪婪模式,然后发现刚刚吃的那个不好吃,就会吐回输入缓冲区这就会影响用户的下一次输入,
因为输入缓冲区中有东西,所以用户下次输入的东西要排在之前缓冲区内容的后面.
2、%ch则是输入一个字符后,必须加上一个h
比如:
scanf("%*[^\n]");
里面的[^\n]表示:除了'\n'以外的,[^a]就是除了'a'里面的*表示:通配符,所有字符.
然后合起来就是取出所有除了\n之外的字符scanf("%*c");
就是取出一个字符,一般取出就是刚刚上面那句没有取出的'\n'
为什么这么做是因为scanf读取数据的机制,scanf是从输入缓冲区取数据的
而它取数据的时候会逐个查看,可以理解为贪婪模式,然后发现刚刚吃的那个不好吃,就会吐回输入缓冲区这就会影响用户的下一次输入,
因为输入缓冲区中有东西,所以用户下次输入的东西要排在之前缓冲区内容的后面.
名片
2024-10-28 广告
2024-10-28 广告
作为优菁科技(上海)有限公司的一员,Altair HyperWorks是我们重点代理的CAE软件套件。该软件以其全面的仿真能力、丰富的建模工具和高效的优化设计功能著称,广泛应用于汽车、航空航天、能源及电子等行业。HyperWorks通过集成...
点击进入详情页
本回答由名片提供
展开全部
刚学C 语言?
scanf 表示输入 ,“%c”表示输入数据的类型格式 &表示取地址 &ch表示输入数据后存到ch里面等于给ch赋值。
这段代码的意思 是 从键盘输入一个字符 存到ch里面 你在前面一定定义了ch。
scanf 表示输入 ,“%c”表示输入数据的类型格式 &表示取地址 &ch表示输入数据后存到ch里面等于给ch赋值。
这段代码的意思 是 从键盘输入一个字符 存到ch里面 你在前面一定定义了ch。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
scanf("输入控制符", 输入参数);
这个语句的功能是,将从键盘中输入的字符转化成输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中。
scanf("%c",&ch); 中的
"%c" 是输入控制符,%d 表示字符,表示从键盘中输入的字符转换为字符(从键盘中接收的都是字符)
&ch 是输入参数,ch 是一个变量,而 & 是取地址符。
所以这个语句简单来说就是,将从键盘中接收到的字符转换为字符型,并将这个字符存放到 ch 变量中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
输入一个字符存在ch这个变量里
更多追问追答
追问
和cin>>ch有什么区别呢?
追答
功能是一样的,只不过cin是c++的语法而已
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |