首页 > 解决方案 > Turbo C++ 中的鼠标接口

问题描述

我正在尝试将交互式鼠标接口添加到我的程序中,但我无法理解其中的需要delay()

这是代码:

do
{
    getmousepos(&button,&x,&y);
    if(button==1)
    {
        delay(500);
        xx[i] = x;
        yy[i] = y;
        i++;
    }
}while(!kbhit());

不知道delay()这里做什么。因为如果按下按钮,坐标无论如何都会分配给它们各自的数组。那么需要添加什么延迟呢?

该程序delay()给出了正确的输出。
但如果我删除它,屏幕上不会打印任何内容。
在这种情况下,什么如此重要delay()

标签: mousedosturbo-c++

解决方案


Turbo C++ ......这让我回来了。这是我所期待的事情以及为什么delay()需要这样做。

您在这里拥有的是一个轮询循环。如果没有delay(),您将在按钮为 1 时淹没xx[]yy[]缓冲区,并且可能也会溢出它们。请记住,当您按下鼠标按钮时,计算机可以多次执行该循环。在某种程度上平衡了这一点。delay()


推荐阅读