C의 구조
5882 단어 structuresbasicscbeginners
개요
이전 게시물에서 다루었듯이 구조는 관련된 요소를 논리적으로 그룹화하는 데 매우 유용합니다. 이것은 배열과 결합하여 더 확장할 수 있습니다. 구조체는 유형이므로 C에서 구조체 배열을 만드는 것은 완벽하게 유효합니다. 따라서 많은 날짜를 추적해야 하는 경우(이전 예를 계속하기 위해) 모든 날짜를 한 곳에 보관할 수 있는 배열을 만들 수 있습니다.
구조체 배열 선언
구조체 배열을 선언하는 구문은 다른 배열로 선언하는 것과 유사하지만 struct 키워드와 구조체 유형이 앞에 옵니다.
// declares an array of ten items of structure type date
struct date myDates[10]
배열 내부의 요소에 액세스하거나 할당하려면 인덱스와 점 표기법을 사용합니다.
myDates[1].month = 7;
myDates[1].day = 9;
myDates.year = 1979;
구조를 포함하는 배열을 초기화하는 것은 다차원 배열을 초기화하는 것과 유사합니다. 아래의 내부 중괄호는 선택 사항이지만 코드를 훨씬 더 읽기 쉽게 만들 수 있으므로 권장됩니다.
struct date myDates[3] =
{
{7, 9, 1979},
{11, 26, 2019},
{12, 26, 2019},
};
// to initialize values besides the one declared in the initial initialization, the curly brackets can be used inside the declaration
struct date myDates[3] =
{
[4] = {1, 1, 2020}
};
// ...and dot notation can be used to assign specific elements as well
struct date myDates[3] = {[1].month = 12, [1].day =30};
배열을 포함하는 구조
배열을 멤버로 포함하는 구조를 정의하는 것도 가능합니다. 이것의 가장 일반적인 사용 사례는 구조체 내부에 문자열을 갖는 것입니다. 일 수와 월 이름의 약어를 모두 포함하는 'month'라는 구조를 만듭니다.
struct month
{
int numberOfDays;
char name[3];
}
struct month aMonth;
aMonth.numberOfDays = 31;
aMonth.name[0] = 'J';
aMonth.name[1] = 'a';
aMonth.name[2] = 'n';
// a quicker way to do the above for the name would be to use a shortcut
struct month aMonth = {31, {'J', 'a', 'n'}};
Reference
이 문제에 관하여(C의 구조), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mikkel250/structures-in-c-1lm7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)