2015-01-14 6 views
0

현재 사각형을 화면에 그리는 프로그램이 있지만이 사각형에 세로선을 추가하려고합니다.이 사각형은 화면에 인쇄되지만 그것이 정의 된 전체 길이가 아니라 정사각형 내에 있어야한다. 어떤 도움을 많이 주시면 감사하겠습니다!C 프로그램 세로줄이 창 (정사각형) 내에서 인쇄되지 않습니다

#include <ncurses.h> 

int main() 
{ 
    initscr(); 
    mvvline(1,1,ACS_VLINE,10); //does not fully print to screen, and is printed outside of the square 
    refresh(); 

    WINDOW *win = newwin(10,10,0,0); 
    box(win, '|', '-'); 
    touchwin(win); 
    wrefresh(win); 

    getchar(); 
    endwin(); 
    return 0; 
} 
+0

질문이 이해가 가지 않습니다. 예상 출력을 추가 할 수 있습니까? –

+0

사각형은 원점 (0,0)에서 시작하도록 정의되고, 드로잉하는 수직선은 (1,1)에서 시작하도록 정의되어 있으므로 수학적으로 말하면 수직선은 사각형 안에 그려야합니다. 아닙니다. 바로 아래에 그려져 있습니다. – user20842454566

답변

0

는 대신 mvvline

mvwvline(win, 1, 1, '|', 10); // does print to screen 

mvwvline을 필요로하고 win varible가

int main() 
{ 
    initscr(); 
    refresh(); 

    WINDOW *win = newwin(10, 10, 0, 0); 
    box(win, '|', '-'); 
    mvwvline(win, 1, 1, '|', 10); //does not print to screen 
    touchwin(win); 
    wrefresh(win); 

    getchar(); 
    endwin(); 
    return 0; 
} 

를 초기화 한 후, 물론 당신은 win이 보장되는 경우 나도 몰라 코드를 이동해야합니다 비 NULL을 반환하지만 설명서를 확인하십시오. d NULL을 반환하면 정의되지 않은 동작이 발생합니다.

+0

건배! 정말 고마워! – user20842454566