l10978 发表于 2014-9-4 21:43:30

C语言问题,呜呜,会汇编的更好

本帖最后由 风之残月 于 2014-11-9 22:41 编辑




#include<stdio.h>
#include<conio.h>
void main()
{
int a=0,i,sum=0,b;
for (i=1;i<=1000000;i++)
{
      sum=sum+i;
      if(kbhit())          //请看这里
{
      if(' '==getch())
   {
       i=1000001;
      }
}                     //到这里为止,这段语句
else
{
   printf("%d",i);
}

}
printf("%d",sum);
}

/*****************/
*我想问的就是 上面标识的那段语句我如果单单用
if(' '==getch())
{
i=1000001;
}
这个程序就只能在我们按下一个按键后才执行下面的语句。(就是会有中断)

为什么上面用
if(kbhit())
{
   if(' '==getch())
   {
   i=1000001;
   }
}
这样的嵌套语句       他就不会    出现   按下按键   才 执行下面语句的这种情况。(说白了就是没有中断)
这样的嵌套语句就没有中断出现,这是为什么呢

jy02229968 发表于 2014-9-4 21:43:31

函数名:kbhit()(VC++6.0下为_kbhit())
功 能及返回值: 检查当前是否有键盘输入,若有则返回一个非0值,否则返回0
用 法:int kbhit(void);
包含头文件: include <conio.h>

l10978 发表于 2014-9-5 00:39:11

一切都是我想太多了,谢谢,一开始脑子乱了,现在清醒了:sweat::sweat::sweat::shy::shy::shy:

醉、爱 发表于 2014-9-7 15:20:29

额看看先。。。。

選擇ゞ忘記 发表于 2014-9-11 15:10:41

两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!

選擇ゞ忘記 发表于 2014-9-11 15:13:37

RptContainer.aspx

澎儿 发表于 2014-9-11 19:33:39

不清楚

澎儿 发表于 2014-9-11 19:41:59

来看看
页: [1]
查看完整版本: C语言问题,呜呜,会汇编的更好