我需要一种方法将屏幕内容保存到缓冲区(而不是像 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/