분류 | 게시판 |
베스트 |
|
유머 |
|
이야기 |
|
이슈 |
|
생활 |
|
취미 |
|
학술 |
|
방송연예 |
|
방송프로그램 |
|
디지털 |
|
스포츠 |
|
야구팀 |
|
게임1 |
|
게임2 |
|
기타 |
|
운영 |
|
임시게시판 |
|
옵션 |
|
게임만들기 질문 이후에 알려주신 링크를 타고 타다가..
밑의 소스를 봤습니다.
4가지 정도의 질문이 있슴니당
질문은 맨 아래에 하고 질문할 내용을 연두색으로 표시할게여
#include<stdio.h>
#include<conio.h>
#include<windows.h>
#define X_MAX 79 //가로(열) 방향의최대값
#define Y_MAX 24 //세로(행) 방향의최대값
void move_arrow_key(char key, int *x1, int *y1, int x_b, int y_b);
void gotoxy(int x, int y);
int main(void)
{
char key;
int x=10, y=5;
do
{
gotoxy(x,y);
printf("A");
key=getch();
system("cls");
move_arrow_key(key, &x, &y, X_MAX, Y_MAX);
}while(key != 27);
return 0;
}
void move_arrow_key(char key, int *x1, int *y1,int x_b, int y_b)
{
switch(key)
{
case 72:
(*y1)--; //위쪽(상) 방향의화살표키입력
if(*y1<1) *y1=1; //y좌표의최솟값
break;
case 75:
(*x1)--; //왼쪽(좌) 방향의화살표키입력
if(*x1<1) *x1=1; //x좌표의최솟값
break;
case 77:
(*x1)++; //오른쪽(우) 방향의화살표키입력
if(*x1>x_b) *x1=x_b; //x좌표의최댓값
break;
case 80:
(*y1)++; //아래쪽(하) 방향의화살표키입력
if(*y1>y_b) *y1=y_b; //y좌표의최댓값
break;
default:
return;
}
}
void gotoxy(int x, int y)
{
COORD Pos = { x-1, y-1 };
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
}
1. conio.h 와 stdilb의 차이점
표준과 비표준의 차이는 알겠습니다 하는 역할이 비슷하다고 그러더군요..
근데 stdlib을 사용하면 getch 함수에 빨간색 밑줄 쳐지면서 경고가 뜹니다 (실행은 잘되요..)
왜그럴까요?ㅠ
2. while 문에 key != 27 이 무얼 의미하는건가요?
좌표가 24,79 밖에 없으니 27이 나올리는 없다 즉 무한루프이다 라는걸까요??
그러기엔 79라는 좌표도 있는데...
3. 좌표의 최댓값 부분에서 int x_b, int y_b 얘는 각각 24, 79 를 의미하는 것 같은데
소스의 어딜 찾아봐도.. 대입하는 부분이 보이질 않습니다 ㅠㅠ
어째서 갑작스럽게 얘네들이 최댓값이 된건가요??ㅠ
4. COORD Pos = { x-1, y-1 };
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
api 함수라고 들었습니다..
아직 api에 대해 배우지도 않았고 개념도 뭘하는건지도 모릅니다만..
그래도 제가 앞으로 자주 써야하는 부분일것 같아서
위에 있는 함수만 어떻게든 배우고 가고싶습니다..
죄송합니다. 댓글 작성은 회원만 가능합니다.
번호 | 제 목 | 이름 | 날짜 | 조회 | 추천 | |||||
---|---|---|---|---|---|---|---|---|---|---|
56 | 유니티 상태패턴.. [1] | 베오베감이다 | 19/08/26 02:53 | 51 | 0 | |||||
55 | api에서 getDigItemText 함수 사용 문제 [2] | 베오베감이다 | 17/01/10 20:24 | 29 | 0 | |||||
54 | API와 C++ 2D 게임 질문 [3] | 베오베감이다 | 16/06/24 11:51 | 39 | 0 | |||||
53 | 게임 프로그래머 신입 2d api포폴.. [5] | 베오베감이다 | 16/06/19 13:44 | 67 | 0 | |||||
52 | api 네트워킹 관련 질문 [5] | 베오베감이다 | 16/05/10 16:14 | 39 | 0 | |||||
51 | 구조체 배열로 카드생성 셔플 질문.. [3] | 베오베감이다 | 16/04/05 23:20 | 27 | 0 | |||||
50 | cocos2d-x 설치하고 싶어요 [18] | 베오베감이다 | 15/12/21 03:39 | 41 | 0 | |||||
49 | 본삭금)이디야 커피 좋아하시나요 [2] | 베오베감이다 | 15/12/20 21:59 | 39 | 0 | |||||
48 | 안산사시는분 계셔요? [4] | 베오베감이다 | 15/12/20 16:05 | 36 | 0 | |||||
47 | 본삭금)cocos2d-x 오류 질문... [12] | 베오베감이다 | 15/12/20 05:59 | 29 | 0 | |||||
46 | 코코스2dx랑 코코스스튜디오랑 다른건가요? [3] | 베오베감이다 | 15/12/19 02:32 | 37 | 0 | |||||
45 | 본삭금) 소스 만들때 다들 파일분할 하시나여? [5] | 베오베감이다 | 15/12/18 20:42 | 26 | 0 | |||||
44 | C언어로만 만든 게임 [7] | 베오베감이다 | 15/12/18 13:12 | 77 | 0 | |||||
43 | 본삭금)c언어 게임 저장 및 불러오기 파일 입출력 질문 [5] | 베오베감이다 | 15/12/02 21:19 | 24 | 0 | |||||
42 | 본삭금) 아직도 해결 못하고 있는 메뉴선택...ㅠㅠ [3] | 베오베감이다 | 15/11/28 16:38 | 27 | 0 | |||||
41 | 본삭금) 메뉴선택,커서이동,선택후 창변환 질문 [3] | 베오베감이다 | 15/11/27 23:12 | 16 | 0 | |||||
▶ | 본삭금) 커서이동 질문 [2] | 베오베감이다 | 15/11/27 19:41 | 23 | 0 | |||||
39 | 본삭금)C언어 게임 맵만들기 질문 [9] | 베오베감이다 | 15/11/27 18:42 | 42 | 0 | |||||
38 | 알고리즘 순서도는 사람마다 다른가요? [3] | 베오베감이다 | 15/10/07 19:03 | 42 | 1 | |||||
37 | ㄹㅌ 혹시 새벽타임 무도 도실분계신가요 [1] | 베오베감이다 | 15/09/13 01:54 | 73 | 1 | |||||
36 | 본삭금) C++공부가 막혀요ㅠㅠ [6] | 베오베감이다 | 15/08/16 19:16 | 46 | 0 | |||||
35 | 본삭금)C++ 복사생성자의 소멸자 질문! [6] | 베오베감이다 | 15/08/06 15:25 | 39 | 0 | |||||
34 | c++ 진짜 어려워요 ㅠㅠ [5] | 베오베감이다 | 15/07/26 15:36 | 64 | 0 | |||||
33 | 구조체 동적할당 [4] | 베오베감이다 | 15/07/14 13:21 | 46 | 0 | |||||
32 | 본삭금)게임프로그래밍 스킬트리 [11] | 베오베감이다 | 15/07/13 22:00 | 57 | 0 | |||||
31 | 열혈강의 c언어 한권 독학으로 끝냈는데요 [8] | 베오베감이다 | 15/07/13 14:50 | 53 | 0 | |||||
30 | 야구게임 질문 납량특집 버전 [3] | 베오베감이다 | 15/07/03 22:47 | 17 | 0 | |||||
29 | exe 파일 생성 [3] | 베오베감이다 | 15/07/03 21:51 | 39 | 0 | |||||
28 | 열혈강의 도전three 도전3 하고있는데.. [12] | 베오베감이다 | 15/07/03 20:27 | 19 | 0 | |||||
27 | 문제의 의도를 모르겠어요 ㅠㅠ [5] | 베오베감이다 | 15/07/03 17:48 | 66 | 0 | |||||
|
||||||||||
[1] [2] | ||||||||||