C 언어
이 튜토리얼에서는 예제를 통해 C 프로그래밍의 구조체 유형에 대해 배울 것입니다.
C 프로그래밍에서 구조체(또는 구조체)는 단일 이름 아래의 변수 모음(다른 유형일 수 있음)입니다.
<시간>
구조 변수를 생성하기 전에 데이터 유형을 정의해야 합니다. 구조체를 정의하려면 struct
키워드가 사용되었습니다.
struct structureName {
dataType member1;
dataType member2;
...
};
예를 들어,
struct Person {
char name[50];
int citNo;
float salary;
};
여기에서 파생된 유형 struct Person
정의됩니다. 이제 이 유형의 변수를 만들 수 있습니다.
struct
일 때 유형이 선언되고 스토리지 또는 메모리가 할당되지 않습니다. 주어진 구조 유형의 메모리를 할당하고 작업하려면 변수를 생성해야 합니다.
구조 변수를 만드는 방법은 다음과 같습니다.
struct Person {
// code
};
int main() {
struct Person person1, person2, p[20];
return 0;
}
struct
를 만드는 또 다른 방법 변수:
struct Person {
// code
} person1, person2, p[20];
두 경우 모두
struct Person
입니다. 변수struct Person
입니다. 크기가 20인 배열.구조체의 멤버에 액세스하는 데 사용되는 연산자에는 두 가지 유형이 있습니다.
.
- 회원 운영자->
- 구조체 포인터 연산자(다음 튜토리얼에서 설명)급여에 액세스하려고 한다고 가정해 보겠습니다. 사람2의 . 방법은 다음과 같습니다.
person2.salary
<시간>
#include <stdio.h>
#include <string.h>
// create struct with person1 variable
struct Person {
char name[50];
int citNo;
float salary;
} person1;
int main() {
// assign value to name of person1
strcpy(person1.name, "George Orwell");
// assign values to other person1 variables
person1.citNo = 1984;
person1. salary = 2500;
// print struct variables
printf("Name: %s\n", person1.name);
printf("Citizenship No.: %d\n", person1.citNo);
printf("Salary: %.2f", person1.salary);
return 0;
}
출력
Name: George Orwell Citizenship No.: 1984 Salary: 2500.00
이 프로그램에서는 struct
를 만들었습니다. Person
라는 이름의 . Person
변수도 생성했습니다. 이름이 person1임 .
main()
에서 , Person
에 정의된 변수에 값을 할당했습니다. person1 개체.
strcpy(person1.name, "George Orwell");
person1.citNo = 1984;
person1. salary = 2500;
strcpy()
을 사용했습니다. person1.name에 값을 할당하는 함수 .
name 때문입니다. char
입니다. 배열(C-문자열)이며 할당 연산자 =
를 사용할 수 없습니다. 문자열을 선언한 후 함께 사용합니다.
마지막으로 person1의 데이터를 출력했습니다. .
<시간>
typedef
를 사용합니다. 키워드를 사용하여 데이터 유형에 대한 별칭 이름을 만듭니다. 일반적으로 변수 선언 구문을 단순화하기 위해 구조와 함께 사용됩니다.
예를 들어 다음 코드를 살펴보겠습니다.
struct Distance{
int feet;
float inch;
};
int main() {
struct Distance d1, d2;
}
typedef
을 사용할 수 있습니다. 단순화된 구문으로 동등한 코드를 작성하려면:
typedef struct Distance {
int feet;
float inch;
} distances;
int main() {
distances d1, d2;
}
<시간>
#include <stdio.h>
#include <string.h>
// struct with typedef person
typedef struct Person {
char name[50];
int citNo;
float salary;
} person;
int main() {
// create Person variable
person p1;
// assign value to name of p1
strcpy(p1.name, "George Orwell");
// assign values to other p1 variables
p1.citNo = 1984;
p1. salary = 2500;
// print struct variables
printf("Name: %s\n", p1.name);
printf("Citizenship No.: %d\n", p1.citNo);
printf("Salary: %.2f", p1.salary);
return 0;
}
출력
Name: George Orwell Citizenship No.: 1984 Salary: 2500.00
여기에서는 typedef
을 사용했습니다. Person
별칭 person
을 생성하는 구조 .
// struct with typedef person
typedef struct Person {
// code
} person;
이제 간단히 Person
을 선언할 수 있습니다. person
를 사용하는 변수 별칭:
// equivalent to struct Person p1
person p1;
<시간> C 프로그래밍에서 구조체 안에 구조체를 만들 수 있습니다. 예를 들어,
struct complex {
int imag;
float real;
};
struct number {
struct complex comp;
int integers;
} num1, num2;
img를 설정하고 싶다고 가정해 보겠습니다. num2의 11 변수 . 방법은 다음과 같습니다.
num2.comp.imag = 11;
<시간>
#include <stdio.h>
struct complex {
int imag;
float real;
};
struct number {
struct complex comp;
int integer;
} num1;
int main() {
// initialize complex variables
num1.comp.imag = 11;
num1.comp.real = 5.25;
// initialize number variable
num1.integer = 6;
// print struct variables
printf("Imaginary Part: %d\n", num1.comp.imag);
printf("Real Part: %.2f\n", num1.comp.real);
printf("Integer: %d", num1.integer);
return 0;
}
출력
Imaginary Part: 11 Real Part: 5.25 Integer: 6<시간>
사람에 대한 정보(이름, 시민권 번호, 급여)를 저장하려고 한다고 가정합니다. 다른 변수 name을(를) 만들 수 있습니다. , citNo 및 급여 이 정보를 저장합니다.
한 명 이상의 정보를 저장해야 하는 경우 어떻게 해야 합니까? 이제 각 정보에 대해 사람마다 다른 변수를 만들어야 합니다. name1 , citNo1 , 급여1 , 이름2 , citNo2 , 급여2 등
더 나은 접근 방식은 모든 관련 정보를 단일 이름 Person
으로 수집하는 것입니다. 모든 사람을 위해 구조화하고 사용하십시오.
C 언어
C# 다차원 배열 이 튜토리얼에서는 2차원 배열의 예를 사용하여 C#의 다차원 배열에 대해 배웁니다. 다차원 배열에 대해 배우기 전에 C#의 1차원 배열에 대해 알아야 합니다. 다차원 배열에서 배열의 각 요소는 배열이기도 합니다. 예를 들어, int[ , ] x = { { 1, 2 ,3}, { 3, 4, 5 } }; 여기서 x {1, 2, 3}의 두 요소가 있는 다차원 배열입니다. 및 {3, 4, 5} . 그리고 배열의 각 요소는 3 요소. C#의 2차원 배열 2차원 배열은 1차원 배열을 요소로 사용합니다. 특정 수의 행
C# foreach 루프 이 기사에서는 foreach 루프(for 루프의 대안)와 이를 배열 및 컬렉션과 함께 사용하는 방법에 대해 알아봅니다. C#은 배열/컬렉션 항목을 반복하기 위해 배열 및 컬렉션으로 작업할 때 for 루프인 for 루프에 대한 사용하기 쉽고 읽기 쉬운 대안을 제공합니다. foreach 루프는 각 항목을 반복하므로 foreach 루프라고 합니다. foreach 루프를 진행하기 전에 다음을 방문하십시오. C# for 루프 C# 배열 C# 컬렉션 foreach 루프의 구문 foreach (eleme