当前位置: 代码迷 >> C语言 >> 求助:测试液晶屏的程序有个问题。
  详细解决方案

求助:测试液晶屏的程序有个问题。

热度:225   发布时间:2008-04-30 12:34:06.0
求助:测试液晶屏的程序有个问题。
#include <stdio.h>
#include <graphics.h>  
#include <math.h>
#include<time.h>
#define pi 3.1415926
int main(void)
{
    int i,j,x,y,k=1;
    int L,key1;
    int a=DETECT,b;
    int gdriver=DETECT , gmode;
    initgraph(&gdriver, &gmode, "");
//    setbkcolor(8);
//    setcolor(4);
    initgraph(&a,&b,"d:\\tc");
//    while(1)
//    {
        for(L=1;L<=10;L++)
        {
            for(j=1;j<=15;j++)
            {
                delay(1000);
                setbkcolor(j);
             }

                if(bioskey(1))
                {
                    key1=bioskey(0);
                    if(key1==27) break;
                }
         }
//     }
        while( !kbhit() )
        {
            setbkcolor(11);
            setcolor(13);
            j+=10;
            for(i=0;i<=2000;i++)
            {
                x=300+238*cos(2*i*pi/1000)*sin(i*pi/1000+j*pi/1000);
                y=240+238*cos(2*i*pi/1000)*cos(i*pi/1000+j*pi/1000);
                if(j%500==0) k++;
                putpixel(x,y,k);
            }
                delay(300);
        }

        return 0;
}
在for循环中,我想按ESC键退出循环,可是实现不了,总是要等循环完了后才能退出,是咋儿地了泥?
搜索更多相关的解决方案: 液晶屏  int  include  

----------------解决方案--------------------------------------------------------
这里不是玩嵌入式的!
问题太白,看不清!
----------------解决方案--------------------------------------------------------
是不是因为循环中耗费的时间比较长,而while( !kbhit() )被执行时,并非你按下ESC的那一时刻,因此引起的
将kbhit()返回赋给一个int变量,用该变量作为循环判断条件试一下
----------------解决方案--------------------------------------------------------
  相关解决方案