Turbo C的GNU/Linux替换函数`clrscr`和`cprintf`

Sou*_*rav 2 c linux gcc ncurses

我刚刚搬到Linux一个月了.我使用Borland Turbo C进行C编程,但其中一些功能在GNU/Linux中不起作用,所以寻求帮助.

这些是我想要替换的一些函数:
- gotoxy
- cprintf
- clrscr
- initgraph/graphics.h

我将很感激一些代码示例,展示如何使用任何替换.

Mic*_*bus 6

在linux中,您可以使用ncurses库将终端用作文本缓冲区:移动光标并写入文本.它还可以绘制窗口和其他高级小部件.

用于gotoxy查看movewmove来自ncurses(链接).对于cprintfprintw.您只需使用即可清除屏幕clear().

在ncurses中,您还需要使用refresh()after printw和刷新屏幕clear().

示例程序,它使用ncurses中提到的所有函数:

#include <curses.h>

int main(int argc, char *argv[])
{
    initscr();
    clear();
    move(15, 20);
    printw("Test program: %s", argv[0]);
    refresh();
    getch();
    endwin();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在gcc中编译: gcc program.c -lcurses

至于图形,你必须选择一个特定的库.如果您需要与低级graphics.h类似的体验,那么您可能正在寻找directfbsvgalib.如果要在窗口中渲染图形,SDL将很有帮助.


Kon*_*ads 5

您参考的功能是Borland专用控制台应用程序库的一部分.你想了解ncurses.