용어체크
1. 간접 멤버 연산자
(indirect membership operator)
- 구조체 포인터변수를 이용한 구조체 멤버 접근을 위해 사용되는 연산자
2. 공용체
(union)
- 같은 메모리 영역을 여러 개의 변수가 공유
- 메모리 절약(가장 큰 멤버의 크기만큼 할당)
- 동시에 모든 멤버 변수들의 값을 저장할 수 없음
3. 열거형
(enumeration)
- 변수가 가질 수 있는 기호상수들을 모아놓은 자료형
- 프로그램의 이해도 향상, 오류 줄여줌
학습내용
|
열거형을 사용하는 이점은 무엇일까요?가질 수 있는 값을 제한하는 것이 프로그래밍 오류를 줄여주기 때문입니다.
Quiz 01구조체를 함수로 전달하면 원본이 전달된다.
- 1 O
- 2 X
정답 :1
해설 :구조체를 함수로 전달하면 값에 의한 호출방식에 의해 원본이 전달된다.
Quiz 02구조체와 공용체의 차이점은 무엇인가?
- 1 멤버 접근 방식
- 2 태그이름 사용
- 3 정의 시 변수 자동 생성
- 4 메모리 할당 크기
정답 :4
해설 :구조체는 멤버들의 총크기, 공용체는 멤버 중 가장 큰 크기만큼 메모리가 할당된다.
Quiz 03공용체를 정의하기 위해 사용하는 키워드는 무엇인가?
- 1 struct
- 2 enum
- 3 union
- 4 int
정답 :3
해설 :union은 공용체를 정의하기 위해 사용하는 키워드이다.
학습정리
1. 구조체와 포인터
- 구조체에서 포인터가 사용되는 경우에는 구조체를 가리키는 포인터로 사용하는 경우와 포인터를 멤버로 가지는 구조체를 사용하는 경우가 있음
- 구조체 포인터변수를 이용하여 구조체 멤버 접근을 하기 위해 간접 멤버 연산자( → 연산자)를 사용함
2. 구조체와 함수
- 구조체를 함수의 인수로 사용할 수 있음
- 구조체를 함수에서 반환값으로 반환이 가능함
- 값에 의한 호출이 사용되기 때문에, 구조체 변수의 모든 내용이 복사되어 함수로 전달/반환되며, 구조체의 크기가 클 경우에 상당한 시간이 소요됨 → 구조체의 포인터를 사용하는 것이 바람직
- 함수가 구조체를 반환할 때 복사본이 반환되며, 한 번에 여러 개의 값을 반환할 수 있음
3. 공용체(union)
- 같은 메모리 영역을 여러 개의 변수가 공유하여 메모리 절약(가장 큰 멤버의 크기만큼 할당)이 가능하지만, 동시에 모든 멤버 변수들의 값을 저장할 수 없음
- 열거형(enumeration)은 변수가 가질 수 있는 기호상수들을 모아놓은 자료형으로, 프로그램의 이해도를 향상시키고, 오류를 줄여줌
'컴퓨터공학 > C언어' 카테고리의 다른 글
C언어 14 - 1 구조체 개념 (0) | 2021.11.22 |
---|---|
C언어 13 - 2 문자열 처리 라이브러리 (0) | 2021.11.20 |
C언어 13 - 1 문자열 입출력 라이브러리 (0) | 2021.11.15 |
C언어 12 - 2 포인터 활용 (0) | 2021.11.14 |
C언어 12 - 1 포인터의 개념 (0) | 2021.11.14 |