안녕하세요!
오늘은 새로운 내용인 구조체를 가져왔는데요.
다른 언어보다 C언어가 절차형 언어의 특성을 많이 가지고 있기 때문에
구조체가 정말 많이 사용되며 C언어 안에서 한몫을 하고 있답니다.
오늘도 시원하게 구조체 한번 배우러 가봅시다!!!
지금까지 우리가 배운 변수나 배열들은 각자의 역할이 존재했습니다.
서로 관계가 없었기에 구조체도 필요가 없었죠
하지만 프로젝트가 점점 커지고 내용이 많아질수록
서로 관련 있는 변수와 배열들이 생기기도 한답니다.
다음의 예시를 보도록 하시죠
우리는 학급 석차를 매기기 위해서 다음과 같은 변수와 배열들이 필요합니다.
char name[10]
char class[5]
int korea_grade
int english_grade
int math_grade
만약 이렇게만 정의한다면 한 사람의 정보밖에 넣지 못할 것입니다.
그렇다면 변수나 배열을 여러 개로 만들어줘야 하는 것일까요?
정답은 두 가지가 존재합니다.
char name[300][10]
char class[300][5]
int korea_grade[300]
int english_grade[300]
int math_grade[300]
첫 번째는 다음과 같이 2차원 배열과 1차원 배열로 생성해 주면 됩니다.
배열 파트에서 2차원 배열은 언급을 하지 않았지만
다음과 같이 배열을 한 개 더 추가하여
공간을 늘려주는 것이 2차원 배열입니다.
하지만 이렇게 하는 것이 최선일까요?
struct person
{
char name[10]
char class[5]
int korea_grade
int english_grade
int math_grade
}
우리는 다음과 같은 형태로 묶어줄 수 있습니다.
위와 같은 형태를 구조체라고 합니다.
구조체는 다음과 같이 구조체 키워드와 태그가 필수적으로 요구됩니다.
뒤에 태그는 변수명처럼 여러분들이 이해하기 쉬운 단어로 표기하면 됩니다.
struct person p
p.name = "홍길동"
p.class = "1반"
p.korea_grade = 100
p.english_grade = 100
p. math_grade = 100
사용 방법은 다음과 같이 구조체 키워드와 태그명을 입력한 후 새로운 변수명으로 정의해 줍니다.
그런 다음 변수명에 .(점)을 사용하여 구조체 안에 있는 변수들이나 배열들에 접근하면 된답니다.
구조체
그림으로 만들어보면 구조체는 다음과 같은 형태를 띠겠죠?
우리는 오늘 변수와 배열을 활용하여 구조체 만드는 방법을 배워보았습니다.
구조체는 큰 프로젝트를 만드는 데 있어 정말 유용한 키워드입니다.
공통된 항목끼리 묶어서 구조체로 표현한다면 나중에 수정할 때도 편할 것이고
코드를 짜는 데 있어 더 효과적일 것입니다.
여러분도 구조체를 활용하여 한 걸음 더 성장한 개발자가 돼보세요!!