Contents

조회 수 14254 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
비쥬얼 스튜디오(VC++)에서 clrscr(), gotoxy() 함수를 직접 사용하는것은 불가능하다.
왜냐면, vc++는 표준 Ansi C 이외의 함수를 거의 대부분 지원하지 않기 때문..
(위와 같은 콘솔IO 전용 함수들은 표준 Ansi C 에 포함되어있지 않음)

하지만, 방법이 있다^^
clrscr() 함수는 화면을 지우는 함수이고 이와 비슷한 역할을 하는 명령어를 실행하면 된다.
vc++에서는 다음과 같이 꼼수로 대체할 수 있다.
system("cls");

system() 함수는 운영체제(일반적으로 도스) 명령어를 실행시키는 함수로,
cls라는 도스 명령을 프로그램 내부에서 실행한다.

도스 명령어로 cls는 화면을 지우는 명령어이므로,
clrscr()을 쓴 것과 똑같은 결과를 얻을 수 있다.

이 때  slrscr() 함수를 위한 conio.h 헤더파일은 선언해줄 필요가 없다.
대신, system() 함수를 위한 stdlib.h 헤더파일을 반드시 선언해주어야 한다.
#include <stdio.h>  // 입출력
#include <conio.h> // getch()를 위해 선언한 것.
                          // 이 헤더파일은 system()하고 관계 없음 -_-;
#include <stdlib.h> // system() 함수 사용.

int main(void)
{
    printf("Press any key to clear screen...");
    getch(); // 키 하나를 입력받을때까지 대기.
    system("cls"); // 화면을 지움.

    return 0;
}

또 하나 예를 들면..
gotoxy() 함수는 커서의 위치를 이동시키는 함수이다.
이 함수를 대체하려면 비슷한 효과를 내는 SetConsoleCursorPosition() 함수를 사용해야 한다.
(윈 API 에서 기본적으로 제공하는 함수중임, 이름이 좀 길죠. -_-;)
곧바로 사용하면 안되고 아래와 같이 응용하셔서 사용하면 된다.
그대로 복사해갖고 쓰면 됨.
소스 처음 부분에 반드시 프로토타입 선언을 해주어야 함!!
void gotoxy(int x, int y)
{
    COORD Pos = {x - 1, y - 1};
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
}

gotoxy() 함수랑 100% 똑같은 역할을 하고,
물론 사용법도 gotoxy() 함수랑 동일함.

마찬가지로 위의 방법을 사용할 때 conio.h 헤더파일을 선언할 필요는 없다.
하지만 windows.h 헤더파일을 반드시 선언해주셔야 한다.

아래 소스 코드 참고..
#include <windows.h> // SetConsoleCursorPosition(), GetStdHandle()
#include <stdio.h>       // 입출력

void gotoxy(int x, int y); // 모든 함수에서 (main()함수 포함)
                                    // 이 함수를 사용할 수 있도록 프로토타입을 선언.
int main(void)
{
    gotoxy(15, 10); // 현재 커서의 위치를 가로 15, 세로 10 으로 바꿈.
    printf("* (15, 10)"); // 출력. -_-a
    return 0;
}

void gotoxy(int x, int y)
{
    COORD Pos = {x - 1, y - 1};
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
}


?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
921 Etc iOS 에서 쓸만한 오프라인 구글지도 찾기 hooni 2014.01.06 16039
920 Etc [doc] 웜 프레임워크 검증환경 구축(작성중..) file hooni 2013.04.23 16013
919 Etc 여기저기서 모은 VoIP(인터넷전화) 자료들~ file hooni 2013.04.23 15966
918 Etc 티스토리 테이블 html,css 구문 hooni 2013.11.03 15963
917 System/OS [owasp] 10대 웹어플리케이션 보안 취약 file hooni 2013.04.23 15908
916 PPT [ppt] 웜 과제 진행사항(프레임워크 검증환경 구축) 보고 file hooni 2013.04.23 15895
915 System/OS 라우팅 경로 결정 영향 요소 ㅋㅋ file hooni 2013.04.23 15852
914 Develop OGNL(Object Graph Navigation Language) hooni 2013.04.23 15732
913 Etc 영어의 12 시제 (The twelve tenses of English) hooni 2013.07.12 15699
912 Develop [ios] APNS 클라이언트 구현 (pdf) file hooni 2013.06.27 15692
911 Develop [c] 윈도우 API sin 함수 출력.. file hooni 2013.04.23 15673
910 System/OS [router] 설정과 기본 명령어들 모음 hooni 2013.04.23 15671
Board Pagination Prev 1 ... 17 18 19 20 21 22 23 24 25 26 ... 98 Next
/ 98