June is Combung
구조체 본문
#include <stdio.h>
#include <string.h>
// 구조체 : 여러 데이터를 한 세트로 묶어주기 위한 설계도
// 구조체 정의 (설계도 만들기)
/*struct pokemon {
char name[100];
int level;
int hp;
};
// 구조체 -> 사용자 정의 자료형으로 등록
typedef struct pokemon POK;
*/
typedef struct pokemon {
char name[100];
int level;
int hp;
} POK;
void print_pokemon(POK p){
printf("이름 : %s \n", p.name);
printf("레벨 : %d \n", p.level);
printf("체력 : %d \n", p.hp);
return;
}
void level_up(POK* p){
//++(*p).level;
++p->level;
/*
'.' : 이름.필드명 (구조체변수명.멤버변수명)
'->' : 주소->필드명 (구조체의 주소->멤버변수명)
*/
}
void ex01(){
POK p1 = { "피카츄", 100, 1000};
struct pokemon p2, p3;
strcpy_s(p2.name, 100, "라이츄"); //p2.name = "라이츄";
p2.level = 10;
p2.hp = 1000;
strcpy_s(p3.name, 100, "푸린");
p3.level = 20;
p3.hp = p3.level * 100;
print_pokemon(p1);
print_pokemon(p2);
print_pokemon(p3);
level_up(&p1);
level_up(&p3);
print_pokemon(p1);
print_pokemon(p3);
}
/*
< 자기 참조 구조체 >
=> 자기 자신과 똑같은 모양을 참조하는 포인터 멤버를 가지는 구조체
*/
typedef struct node {
int data;
struct node* next;
} NODE;
void main(){
ex01();
}
Comments