본문 바로가기
IT/c언어

C 언어 구조체 (Structure)

by 뉴코딩맨 2023. 7. 18.
C 언어에서 구조체는 여러 가지 데이터 타입을 하나로 묶어 새로운 데이터 타입을 정의하는 데에 사용됩니다. 구조체의 사용 방법과 예제에 대해 알아보겠습니다.
 
 

구조체 정의하기

구조체를 정의하기 위해서는 struct 키워드를 사용해야 합니다. 구조체는 다음과 같은 형식으로 정의할 수 있습니다.
 
struct 구조체명 {
   데이터 타입 멤버1;
   데이터 타입 멤버2;
   // ...
};
 
구조체는 일반적으로 데이터 멤버들을 가지며, 각 멤버는 자신의 데이터 타입을 가집니다. 예를 들어, 학생의 정보를 저장하기 위한 구조체를 정의해보겠습니다.

 

struct Student {
   int id;
   char name[50];
   int age;
};
 
위의 예제에서 Student라는 구조체는 학생의 학번(id), 이름(name), 나이(age)를 멤버로 가지고 있습니다.
 
 

구조체 변수 선언하기

구조체를 사용하기 위해서는 구조체 변수를 선언해야 합니다. 구조체 변수는 일반적인 변수 선언과 동일한 방식으로 선언할 수 있습니다. 다음은 구조체 변수의 선언 예제입니다.
 
struct Student s1;
 
위의 예제에서 s1은 Student 구조체의 변수로 선언되었습니다. 구조체 변수는 해당 구조체의 멤버들을 사용할 수 있게 해줍니다.
 

구조체 멤버 접근하기

구조체 변수의 멤버에 접근하기 위해서는 .(도트) 연산자를 사용합니다. 다음은 구조체 멤버에 접근하는 예제입니다.
 
s1.id = 123;
strcpy(s1.name, "John");
s1.age = 20;
 
위의 예제에서 s1 구조체 변수의 멤버인 id, name, age에 값을 할당하고 있습니다.
 

구조체의 활용

구조체는 여러 개의 데이터를 하나로 묶어 관리할 수 있는 강력한 도구입니다. 예를 들어, 학생들의 정보를 배열로 관리하고 싶다면 다음과 같이 할 수 있습니다.

 

struct Student students[100];
 
위의 예제에서 students는 100명의 학생 정보를 저장하기 위한 구조체 배열로 선언되었습니다.
 
또한, 구조체는 다양한 데이터 타입을 가질 수 있기 때문에 복잡한 데이터 구조를 정의하는 데에 유용하게 사용될 수 있습니다.
 

결론

C 언어에서 구조체는 여러 가지 데이터를 하나로 묶어 새로운 데이터 타입을 정의하는 데에 사용됩니다. 구조체를 통해 복잡한 데이터를 효과적으로 관리할 수 있으며, 구조체의 멤버를 사용하여 데이터에 접근하고 조작할 수 있습니다.
 

'IT > c언어' 카테고리의 다른 글

C 언어 구조체를 함수의 인자로 전달하는 방법  (0) 2023.07.19
구조체 (Structure) typedef  (0) 2023.07.19
C 언어 atoi atof 함수  (0) 2023.07.18
C 언어 strcmp strncmp 함수  (0) 2023.07.18
C 언어 strcat strncat 함수  (0) 2023.07.18

댓글