c - 使用 `*inchstr()`保存的数据恢复屏幕内容

标签 c ncurses curses

我需要一种方法将屏幕内容保存到缓冲区(而不是像 putwin() 那样的 FILE ),以便快速在内存中保存和-恢复,所以我查看了 Ncurses documentation并找到*inchstr()函数系列,看起来正是我所需要的。

所以我将数据保存在一个可以简化为的函数中:

chtype buffer[LINES][COLS+1];
for (int line = 0; line < LINES; line++)
    mvinchnstr(line, 0, buffer[line], COLS);

问题是:如何以有效的方式恢复这些保存的数据到屏幕上?

我知道我可以在 addch() 中使用 2 个嵌套循环,但恢复每个字符不会破坏使用 inchnstr() 的全部目的第一名?是否有 inchnstr()add*() 对应项,它采用以 null 结尾的 chtype 字符数组并打印它?

如果没有,*inchnstr() 系列的用途是什么?是否有更好的方法在内存中保存和恢复屏幕内容?

最佳答案

我认为您正在寻找 addchstr and friends .

关于c - 使用 `*inchstr()`保存的数据恢复屏幕内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28846791/

相关文章:

python - 使用 Python curses 自定义 RGB 颜色

c - C中指针指向指针的问题

c - 在sqlite3中,我们可以将sqlexecute(.....callback function...)转换为sqlite_prepare,step,finalize

c++ - 我如何强制 Windows.h 在 Visual Studio 中静态链接而不是动态链接?

c - 如何在 ncurses 中重新定义颜色对?

Perl + 诅咒 : Expecting a UTF-8 encoded multibyte character from getchar(), 但没有得到任何

c++ - 在 C++ 中将数字和 stdString 解析为 char* [QT]

c - getch(ncurses)返回值在程序之间如何不同?

java - 将 Curses 用于具有许多功能的详细应用程序

不支持 Python curses 重定向