Вызов refresh
перезаписывает wrefresh
, поскольку вызов initscr
указывает библиотеке curses инициализировать экран перед тем, как что-либо еще, и поскольку эта инициализация применяется к stdscr
.
* 1006. * Изменение порядка поможет (но также поможет чтение из последнего окна для обновления):
#include <ncurses.h>
int main() {
WINDOW * Win = initscr();
noecho();
crmode();
WINDOW * win = newwin(10, 10, 1, 1);
box(Win,0,0);
refresh();
box(win,0,0);
wrefresh(win);
wgetch(win);
endwin();
}