[c언어] C 언어를 사용한 게임 정보 저장 및 로드 프로그래밍

게임에서 플레이어의 정보를 저장하고 불러오는 것은 매우 중요합니다. 이 기능은 게임 진행 상황을 저장하고 다음에 불러와서 이어서 플레이하거나 오프라인 상태에서 게임을 계속할 수 있도록 해줍니다. 이번 글에서는 C 언어를 사용하여 간단한 게임 정보를 저장하고 불러오는 프로그래밍에 대해 살펴보겠습니다.

파일 입출력

C 언어에서 파일 입출력을 위해서는 <stdio.h> 헤더 파일을 포함해야 합니다. 이를 통해 파일을 열고 쓰거나 읽을 수 있습니다.

예를 들어, 플레이어의 이름과 레벨을 저장하는 파일 “player.txt”를 다음과 같이 만들 수 있습니다.

#include <stdio.h>

struct Player {
    char name[50];
    int level;
};

int main() {
    struct Player player = {"Alice", 5};
    FILE *file = fopen("player.txt", "w");
    if (file != NULL) {
        fprintf(file, "%s\n%d", player.name, player.level);
        fclose(file);
    } else {
        printf("파일을 열 수 없습니다.");
    }
    return 0;
}

위의 코드에서는 FILE *fopen(const char *filename, const char *mode) 함수를 사용하여 “player.txt” 파일을 쓰기 모드(“w”)로 열고, fprintf 함수를 사용하여 플레이어의 이름과 레벨을 파일에 씁니다.

정보 불러오기

이제 저장된 정보를 다시 불러오는 방법을 살펴봅시다.

#include <stdio.h>

struct Player {
    char name[50];
    int level;
};

int main() {
    struct Player player;
    FILE *file = fopen("player.txt", "r");
    if (file != NULL) {
        fscanf(file, "%s %d", player.name, &player.level);
        fclose(file);
        printf("플레이어 이름: %s, 레벨: %d", player.name, player.level);
    } else {
        printf("파일을 열 수 없습니다.");
    }
    return 0;
}

위의 코드에서는 fopen 함수를 사용하여 “player.txt” 파일을 읽기 모드(“r”)로 열고, fscanf 함수를 사용하여 파일에서 플레이어의 이름과 레벨을 읽어옵니다.

이처럼 C 언어를 사용하여 간단하게 게임 정보를 저장하고 불러오는 기능을 구현할 수 있습니다. 더 복잡한 게임에서는 데이터 구조와 보안을 고려하여 파일 저장 및 불러오기를 구현해야 합니다.

참고 자료: