C언어 struct(구조체)

2019. 3. 24. 23:24C Language

오늘은 구조체에 대해서 알아보자.

 

구조체는 여러 데이터들을 모아놓은 데이터집합체라고도 설명할수 있습니다.

구조체안에 있는 데이터는 구조체 멤버 변수라고 합니다.

예를 들면 구조체 A라는 변수 안에 int a, char b가 있다고 하면 A는 구조체 변수고, a,b는 구조체 멤버 변수입니다.

 

그렇다면 구조체는 언제 사용해야하는걸까?

바로 똑같은 자료형 변수를 여러가지 사용을 할때 필요합니다

예를 들면 학생정보를 관리하는 프로그램이 필요하다고 치죠.

A라는 학생의 이름, 나이가 담긴 정보, B라는 학생의 이름, 나이가 담긴 정보가 있다고 하죠.

이 두학생의 관련된 정보를 어떻게 처리할것인가요?

그냥 배열로 사용해서 처리를 할것인가? 그러면 분명 가독성이 떨어질게 분명합니다.

같은 자료형 변수사용이 같은 방식으로 사용될때 구조체를 사용하는것입니다.

 

이제 구조체에 대해 기초는 알았습니다.

그럼 응용해서 사용을 해보죠

구조체는 자료형으로 선언되면서 변수로 사용이 됩니다.

즉 구조체 자체에 값이 담긴다는 뜻입니다.

이렇듯 구조체 자체에 값을 넣을 수 있고, 구조체 멤버 변수에 값을 넣을 수 있으니 실수하지 않게 조심해야 할 것 같습니다.

예를 들면 구조체에 값을 넣었으니 그 안에 있는 멤버 변수들도 다 같이 변한다고 생각하면 안됩니다.

또한 구조체 멤버 변수 값이 통일되어 있다고 그 구조체 변수가 통일되어 있는 값이 되지 않습니다.

구조체와 멤버 변수는 각기 다른 변수이므로 생각을 잘 해야할거 같습니다.

 

tip)같은 멤버변수를 갖고 있는 구조체끼리 대입은 가능합니다.

'C Language' 카테고리의 다른 글

c언어 기본 자료형  (0) 2019.03.24