我需要一种方法将屏幕内容保存到缓冲区(而不是像FILE
那样putwin()
),以便快速进行内存保存和恢复,所以我查看了{{ 3}}并找到了Ncurses documentation系列函数,它们看起来就像我需要的那样。
所以我将数据保存在一个可以简化为:
的函数中chtype buffer[LINES][COLS+1];
for (int line = 0; line < LINES; line++)
mvinchnstr(line, 0, buffer[line], COLS);
问题是:如何以有效的方式将这个保存的数据恢复到屏幕?
我知道我可以使用addch()
的2个嵌套循环,但是不会恢复每个字符的字符会失败首先使用inchnstr()
的目的吗?是add*()
inchnstr()
对应的chtype
字符串是否以*inchnstr()
字符为单位并打印出来?
如果没有,{{1}}家庭的目的是什么?是否有更好的方法来保存和恢复内存中的屏幕内容?