为什么winbgi函数settextstyle()会占用堆上的内存?

Why is winbgi function settextstyle() occupying memory on the heap?

我正在使用 winbgi 库用 C 语言制作贪吃蛇游戏。我的函数 settextstyle() 有问题。每次调用函数都会向堆中添加内存(大约 50kb)。我必须在循环中使用这个函数,所以在某个时候堆开始溢出。有没有办法释放这个函数占用的内存?或者通过其他方式更改 winbgi?

中文本的大小
while(1)
{
    settextstyle(DEFAULT_FONT, HORIZ_DIR, 4)
    outtext(...)
    settextstyle(DEFAULT_FONT, HORIZ_DIR, 2)
    outtext(...)
}

here 中获取最新的 winbgi 源代码。

text.cxx 中存在错误(在 SelectObject() 之后缺少对 DeleteObject() 的调用以在 set_font() 中设置新字体),链接的代码修复了该错误。