조금씩 꾸준히 완성을 향해

[C 언어] 구조체(struct) 본문

기타 언어/C 언어

[C 언어] 구조체(struct)

all_sound 2023. 3. 22. 15:03

구조체 

- 여러 변수들을 모아서 하나의 객체를 구성할 때 사용하는 사용자 정의 타입 객체

 

구조체 구성

struct 구조체명 {

  멤버변수1;

  멤버변수2;

}

 

구조체 정의 및 사용

#include <stdio.h>

//정의
int main(){
  struct person
  {
    char *name;
    int age;
  };
  
  //생성
  struct person user1;
  user1.name = "h user";
  printf("%s", user1.name);
}
// h user
#include <stdio.h>

//정의+생성
int main(){
  struct person
  {
    char *name;
    int age;
  } test;
  
  test.name = "h user";
  test.age = 40;
  printf("%s: %d", test.name, test.age);
}
// h user: 40
#include <stdio.h>

//포인터 변수에 담기
int main(){
  struct person
  {
    char *name;
    int age;
  } test;
  
  struct person *p;
  p->name="test_2";
  p->age=40;
  printf("%s: %d", p->name, p->age);
}
// test_2: 40

<예제>

#include <stdio.h>

int main(){
  struct list
  {
    int *fp;
  } data, *p;
  
  int x[] = {100, 200, 300, 400};
  p = &data;
  p->fp = x+1;
  printf("%d", *(++p->fp));
  return 0;
}
// 300

 

 

 

 

 

※ 유튜브 흥달쌤 깨알 C언어 특강을 직접 정리한 내용입니다

'기타 언어 > C 언어' 카테고리의 다른 글

[C 언어] 함수  (0) 2023.03.22
[C 언어] 배열 포인터  (0) 2023.03.22
[C 언어] 포인터 배열  (1) 2023.03.21
[C 언어] 2차원 배열과 포인터  (0) 2023.03.18
[C 언어] 배열과 포인터  (0) 2023.03.18