구조체

No.8·2024년 4월 17일
0

정처기

목록 보기
2/3

구조체

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

  • 구조체의 구성

  • 구조체의 정의 및 사용


  • 예시문제

  • 풀이

  1. list 라는 구조체(struct)를 선언한다. 그 안에는 포인터 변수인 fp가 포함되어 있으며 선언과 동시에 data, 포인터 변수인 p로 초기화하였다.
  2. 배열 x가 있다.
  3. p에 data의 주소값을 할당한다. p는 포인터 변수이기 때문에 p는 data의 주소값을 갖는다. 즉, data와 p 둘 다 같은 것을 바라본다 (구조체 list)
  4. p -> fp = x+1; 구조체는 .이 아닌 ->를 사용하기 때문에 p -> fp는 p라는 인스턴스의 fp 멤버 변수 값에 x+1를 할당한다는 뜻 fp는 포인터 변수이기 때문에 x라는 배열이 가리키고 있는 주소값 200에 1을 더한 201이 할당된다.
  5. (++p->fp) 에서 주의할 점은 ++전위연산을 먼저하지 말라는 것
    p->fp가 먼저이다. 그럼 p 인스턴스의 fp 변수에 ++ 즉 1을 더하란 뜻이고 아까 201이었기 떄문에 202가 된다
    (202) 202의 값이기 때문에 x 배열의 202 주소값이 가지는 값 300이 답이 된다
profile
88888888

0개의 댓글