#include <stdio.h>
#include <windows.h> // 바로 콘솔이 꺼지지 않는 코드의 헤더 파일
void input();        // 시작 함수
int start(int money1); // 출력 함수

int *ptr = NULL; // 전역 포인터 변수

int main() 
{
    input();
    char select;
    while(1) {
        fflush(stdin);
        printf("계속하시겟습니까? Y/N\n");
        scanf("%c",&select);
        if(select == 'y') {
            start(ptr);
        }
        else break;
    }
    system("pause");
    return 0;
}

void input() 
{
    printf("돈을 입력하세요.\n");
    int money;
    scanf("%d",&money);

    if(money >= 10000) {
        printf("환영합니다. 게임을 시작하겟습니다.\n");
        start(money);
        return;
    }
    else {
        return;
    }
}

int start(int money1) {
    printf("1.파이리 = 1000, 2.꼬부기 = 1500, 3.피카츄 = 2000\n");
    int choose;
    int list[3] = {1000,1500,2000};
    scanf("%d",&choose);
    switch(choose) {
    case 1 : money1 -= list[0];
        printf("파이리가 결제되었습니다. money = %d\n",money1);
        break;
    case 2 : money1 -= list[1];
        printf("꼬부기가 결제되었습니다. money = %d\n",money1);
        break;
    case 3 : money1 -= list[2];
        printf("피카츄가 결제되었습니다. money = %d\n",money1);
        break;
    default : printf("잘못된 선택입니다.\n");
        break;
    }
    ptr = &money1;
    return money1;
}


전역 포인터 변수 하나 선언해서 함수 없어지기 전에 주소 참조할려고 했는데 


에러 나더라 알고 보니까 함수가 종료하면 변수도 싹 사라져서 참조할 변수 자체가 없어지는거였음 ㅋㅋㅋ


4시간동안 개지랄해서 겨우 알아냈다