<p>게임만들기 질문 이후에 알려주신 링크를 타고 타다가..</p> <p>밑의 소스를 봤습니다.</p> <p>4가지 정도의 질문이 있슴니당</p> <p>질문은 맨 아래에 하고 질문할 내용을 연두색으로 표시할게여</p> <p><br></p> <p><br></p> <p>#include<stdio.h><br><font color="#00b050">#include<conio.h></font><br>#include<windows.h></p> <p>#define X_MAX 79 //가로(열) 방향의최대값<br>#define Y_MAX 24 //세로(행) 방향의최대값 </p> <p>void move_arrow_key(char key, int *x1, int *y1, int x_b, int y_b);<br>void gotoxy(int x, int y);</p> <p> </p> <p>int main(void)</p> <p>{<br> char key;<br> int x=10, y=5; </p> <p> do<br> {<br> gotoxy(x,y);</p> <p> printf("A");</p> <p> key=getch();</p> <p> system("cls");</p> <p> move_arrow_key(key, &x, &y, X_MAX, Y_MAX);</p> <p> }<font color="#00b0f0">while(key != 27);</font></p> <p> return 0;<br>}</p> <p> </p> <p>void move_arrow_key(char key, int *x1, int *y1,<font color="#00b050">int x_b, int y_b</font>)</p> <p>{</p> <p> switch(key)</p> <p> {</p> <p> case 72:</p> <p> (*y1)--; //위쪽(상) 방향의화살표키입력</p> <p> if(*y1<1) *y1=1; //y좌표의최솟값</p> <p> break;</p> <p> case 75:</p> <p> (*x1)--; //왼쪽(좌) 방향의화살표키입력</p> <p> if(*x1<1) *x1=1; //x좌표의최솟값</p> <p> break;</p> <p> case 77:</p> <p> (*x1)++; //오른쪽(우) 방향의화살표키입력</p> <p> if(*x1>x_b) *x1=x_b; //x좌표의최댓값</p> <p> break;</p> <p> case 80:</p> <p> (*y1)++; //아래쪽(하) 방향의화살표키입력</p> <p> if(*y1>y_b) *y1=y_b; //y좌표의최댓값</p> <p> break;</p> <p> default:</p> <p> return;</p> <p> }</p> <p>}</p> <p> <br> </p> <p>void gotoxy(int x, int y)</p> <p>{</p> <p> COORD Pos = { x-1, y-1 };</p> <p> SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);</p> <p>}</p> <p>1. conio.h 와 stdilb의 차이점 </p> <p>표준과 비표준의 차이는 알겠습니다 하는 역할이 비슷하다고 그러더군요..</p> <p>근데 stdlib을 사용하면 getch 함수에 빨간색 밑줄 쳐지면서 경고가 뜹니다 (실행은 잘되요..)</p> <p>왜그럴까요?ㅠ</p> <p><br></p> <p>2. while 문에 key != 27 이 무얼 의미하는건가요?</p> <p>좌표가 24,79 밖에 없으니 27이 나올리는 없다 즉 무한루프이다 라는걸까요??</p> <p>그러기엔 79라는 좌표도 있는데...</p> <p><br></p> <p>3. 좌표의 최댓값 부분에서 int x_b, int y_b 얘는 각각 24, 79 를 의미하는 것 같은데 </p> <p>소스의 어딜 찾아봐도.. 대입하는 부분이 보이질 않습니다 ㅠㅠ </p> <p>어째서 갑작스럽게 얘네들이 최댓값이 된건가요??ㅠ</p> <p><br></p> <p>4. COORD Pos = { x-1, y-1 };</p> <p> SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);</p> <p>api 함수라고 들었습니다..</p> <p>아직 api에 대해 배우지도 않았고 개념도 뭘하는건지도 모릅니다만..</p> <p>그래도 제가 앞으로 자주 써야하는 부분일것 같아서</p> <p>위에 있는 함수만 어떻게든 배우고 가고싶습니다.. </p> <p><br></p> <p><br></p>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.