C Primer Plus (제5 판) 중국어 판 - 제1 4 장 구조 및 기타 데이터 형식
3 가지 중요 한 기술:
14.2 구조 성명 작성
구조 성명 은 구조 가 어떻게 조합 되 는 지 를 묘사 하 는 주요 한 방법 이다.구조 설명 은 템 플 릿 이 라 고 합 니 다. 예 를 들 어:
struct book {
char title[41];
char author[31];
float value;
};
struct book library; // library book
구조 성명 은 모든 함수 의 밖 에 놓 을 수도 있 고 함수 정의 내부 에 놓 을 수도 있다.
14.3 정의 구조 변수
구 조 는 두 가지 의미 가 있 는데 그것 이 바로 구조 설계 와 구조 변수 이다.
struct book library; // library book
이 명령 을 보면 컴 파일 러 는 변수 library 를 만 듭 니 다.컴 파 일 러 는 북 템 플 릿 을 사용 하여 이 변수 에 공간 을 분배 합 니 다. 이 저장 공간 들 은 하나의 이름 으로 library 가 결 합 됩 니 다.
구조 변수의 성명 에서 struct book 이 일 으 키 는 역할 은 int 나 float 가 변수 성명 에서 의 역할 과 마찬가지 로 struct book 은 새로운 유형 이 되 었 다.
성명 구조의 과정 과 구조 변 수 를 정의 하 는 과정 은 한 단계 로 합 칠 수 있 습 니 다.
struct book {
char title[41];
char author[31];
float value;
} library; //
14.3.1 구조 초기 화
구조 변 수 를 초기 화 하려 면 배열 초기 화 와 유사 한 방법 을 사용 할 수 있 습 니 다. 괄호 로 묶 은 쉼표 로 구 분 된 초기 화 항목 목록 을 사용 하여 초기 화 할 수 있 습 니 다.
struct book library = {
"The Pirate and The Devious Damsel",
"Rence Vivotte",
1.95
};
14.3.2 접근 구조 구성원
구조 구성원 연산 자 점 (.) 을 사용 하면 구조 중의 각 구성원 에 게 접근 할 수 있 습 니 다.예 를 들 어 library. value 는 library 의 value 부분 을 가리킨다.
본질 적 으로 title, author, value 는 북 구조 에서 아래 표 시 된 역할 을 한다.구조 에서 각 구성원 은 자신의 변수 유형 을 가지 고 있 으 며 해당 하 는 데이터 형식 처럼 사용 할 수 있 습 니 다.
14.3.3 구조 지정 초기 화 항목
C99 지원 구조의 지정 초기 화 항목 은 배열 의 지정 초기 화 항목 과 문법 이 비슷 하고 구체 적 인 요 소 를 나타 내 는 방법 만 다 릅 니 다.
// book value
struct book library = {
value = 25.99
};
//
struct book library = {
.value = 25.99,
.author = "James Broadfool",
.title = "Rue for the Toad"
};
또한 특정 구성원 에 게 여러 번 초기 화 되 어 마지막 할당 이 유효 합 니 다.
14.4 구조 배열
14.4.1 선언 구조 배열
struct book library[100]; // library 100 , book
library 자 체 는 구조 명 이 아니 라 요소 유형 이 struct book 구조의 배열 명 입 니 다.
14.4.2 표지 구조 배열 의 구성원
표지 구조 배열 의 구성원: 구조 명 뒤에 점 연산 자 를 추가 한 다음 에 구성원 명 이다.예 를 들 어 library [0]. value 표지 의 첫 번 째 배열 요소 인 value 구성원.
요약:
library //book
library[2] // , book
library[2].value //library[2] title , char
library[2].value[4] //title
14.5 내장 구조
struct names { //
char first[10];
char last[10];
};
struct user { //
struct names handle; //
char job[20];
float income;
};
struct user fellow { //
{"Huang","Jin"},
"personality coach",
12580.00
};
· 끼 워 넣 은 구조의 구성원 에 게 접근 하려 면 점 연산 자 를 두 번 만 사용 하 십시오.
(fellow.handle).first // fellow handle, handle first
14.6 지향 구조 지침
지향 구조의 지침 을 사용 하 는 이유:
14.6.1 구조 포인터 설명 및 초기 화
struct user *him;
먼저 키워드 struct, 그 다음 에 구조 태그 user, 그 다음 에 * 번 이 고 포인터 이름 이 뒤 따른다.이 성명 은 새로운 구 조 를 만 드 는 것 이 아니 라 포인터 him 가 기 존의 user 형식의 구 조 를 가리 킬 수 있다 는 것 을 의미 합 니 다.예 를 들 어 fellow 는 user 형식의 구조 이 고 다음 과 같다.
him = &fellow; // , &
14.6.2 포인터 로 멤버 에 게 접근
포인터 him 지향 구조 fellow, 두 가지 방법 으로 him 를 이용 하여 fellow 의 구성원 값 을 얻 을 수 있 습 니 다:
him->income == fellow.income; // ->
(*him).income == fellow.income; //& *
14.7 함수 에 구조 정보 전달
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
C 언어 체인 시계는 뱀을 탐식하는 작은 게임을 실현한다본고의 실례는 여러분에게 C 언어 체인표가 뱀 탐식 게임을 실현하는 구체적인 코드를 공유하여 참고하도록 하였으며, 구체적인 내용은 다음과 같다. 프로젝트 이름: 뱀놀이 운영 환경: Linux 프로그래밍 언어: C 언...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.