본문 바로가기
개념/혼자 공부하는 C언어

chapter 19) 사용자 정의 헤더 파일을 사용하는 프로그램

by kiseno 2024. 10. 22.
728x90
반응형
SMALL
typedef struct{
    int num;
    char name[20];
} Student;
#include <stdio.h>
#include "define_header/student.h"

int main(void){
    Student a = {315, "hong"};
    printf("class : %d, name : %s\n", a.num, a.name);
    return 0;
}

### 헤더 파일(`student.h`)

헤더 파일에서는 `Student`라는 이름의 구조체를 정의합니다. 이 구조체에는 두 멤버가 있습니다: `int` 타입의 `num`과 `char` 배열 타입의 `name[20]`. `num`은 학생의 번호를 저장하고, `name`은 학생의 이름을 저장합니다. 구조체 정의 앞에 `typedef` 키워드가 사용되어, 이후 `Student`라는 이름으로 이 구조체 타입을 직접 참조할 수 있게 합니다.

### 메인 파일

메인 파일에서는 먼저 `#include` 지시어를 사용해 헤더 파일을 포함시킵니다. 이를 통해 메인 파일에서 `Student` 구조체 타입을 사용할 수 있습니다.

그 다음, `Student` 타입의 변수 `a`를 선언하고 초기화합니다. 여기서 변수 `a`는 학생의 번호가 315이고 이름이 "hong"인 학생을 나타냅니다.

마지막으로, `printf` 함수를 사용하여 변수 `a`의 멤버 `num`과 `name`의 값을 출력합니다. 출력 형식은 "class : 번호, name : 이름"입니다.

### 컴파일과 실행

이 프로그램을 컴파일하고 실행하려면, 먼저 `student.h` 헤더 파일을 포함하는 메인 소스 파일을 작성해야 합니다. 그 후 컴파일러(예: gcc)를 사용하여 컴파일하고 실행 파일을 생성합니다. 예를 들어, 메인 파일이 `main.c`라면 다음과 같은 커맨드로 컴파일할 수 있습니다:

```
gcc main.c -o main
```

이 커맨드는 `main.c` 소스 파일을 컴파일하고 실행 가능한 파일 `main`을 생성합니다. 생성된 실행 파일을 실행하면, 초기화한 학생 정보가 화면에 출력됩니다.

728x90
반응형
LIST