C 언어
STRUCT 서로 다른 데이터 유형의 요소를 함께 저장하는 데 사용할 수 있는 C++ 데이터 구조입니다. C++에서 구조체는 사용자 정의 데이터 유형입니다. 이 구조는 단일 데이터 유형 아래 서로 다른 데이터 유형의 항목을 그룹화하기 위한 데이터 유형을 생성합니다.
예:
누군가, 이름, 시민권 및 나이에 대한 정보를 저장해야 한다고 가정합니다. 이름, 시민권, 나이와 같은 변수를 생성하여 데이터를 별도로 저장할 수 있습니다.
그러나 앞으로 많은 사람에 대한 정보를 저장해야 할 수도 있습니다. 그것은 다른 개인에 대한 변수가 생성된다는 것을 의미합니다. 예를 들어 name1, citizen1, age1 등입니다. 이를 방지하려면 구조체를 만드는 것이 좋습니다.
이 C++ 자습서에서는 다음을 배우게 됩니다.
다음은 C++에서 구조를 사용하는 몇 가지 이유입니다.
C++ 구조를 생성하기 위해 struct 키워드와 식별자를 차례로 사용합니다. 식별자는 구조체의 이름이 됩니다. 다음은 C++ 구조체 생성을 위한 구문입니다.
구문:
struct struct_name { // struct members }
위의 구문에서는 struct 키워드를 사용했습니다. struct_name은 구조의 이름입니다.
구조체 멤버는 중괄호 안에 추가됩니다. 이 멤버는 아마도 다른 데이터 유형에 속할 것입니다.
예:
struct Person { char name[30]; int citizenship; int age; }
위의 예에서 Person은 세 개의 멤버가 있는 구조입니다. 구성원에는 이름, 시민권 및 나이가 포함됩니다. 1개의 멤버는 char 데이터 타입이고, 나머지 2개는 구조체 생성 시 정수로 메모리를 할당하지 않는다. 메모리는 구조체에 변수가 추가된 후에만 할당됩니다.
위의 예에서 Person이라는 구조체를 만들었습니다. 다음과 같이 구조체 변수를 생성할 수 있습니다.
Person p;
p는 Person 유형의 구조체 변수입니다. 이 변수를 사용하여 구조체의 멤버에 액세스할 수 있습니다.
구조체 멤버에 액세스하려면 구조체의 인스턴스와 점(.) 연산자를 사용합니다. 예를 들어, Person 구조체의 구성원 연령에 액세스하려면:
p.age = 27;
구조체의 인스턴스 p를 사용하여 구조체 Person의 멤버 연령에 액세스했습니다. 그런 다음 회원 연령 값을 27로 설정했습니다.
#include <iostream> using namespace std; struct Person { int citizenship; int age; }; int main(void) { struct Person p; p.citizenship = 1; p.age = 27; cout << "Person citizenship: " << p.citizenship << endl; cout << "Person age: " << p.age << endl; return 0; }
출력:
다음은 코드의 스크린샷입니다.
코드 설명:
구조체를 가리키는 포인터를 만드는 것이 가능합니다. int, float, double 등과 같은 기본 데이터 유형을 가리키는 포인터가 생성되는 방식과 유사합니다. C++의 포인터는 메모리 위치를 저장합니다.
#include <iostream> using namespace std; struct Length { int meters; float centimeters; }; int main() { Length *ptr, l; ptr = &l; cout << "Enter meters: "; cin >> (*ptr).meters; cout << "Enter centimeters: "; cin >> (*ptr).centimeters; cout << "Length = " << (*ptr).meters << " meters " << (*ptr).centimeters << " centimeters"; return 0; }
출력:
다음은 코드의 스크린샷입니다.
코드 설명:
구조체를 인수로 함수에 전달할 수 있습니다. 이것은 일반 인수를 전달하는 것과 같은 방식으로 수행됩니다. 구조체 변수는 함수에 전달할 수도 있습니다. 좋은 예는 구조체 멤버의 값을 표시해야 하는 경우입니다. 이를 시연해 보겠습니다.
#include<iostream> using namespace std; struct Person { int citizenship; int age; }; void func(struct Person p); int main() { struct Person p; p.citizenship = 1; p.age = 27; func(p); return 0; } void func(struct Person p) { cout << " Person citizenship: " << p.citizenship<<endl; cout << " Person age: " << p.age; }
출력:
다음은 코드의 스크린샷입니다.
코드 설명:
다음은 구조의 제한 사항입니다.
C 언어
지금까지 C#을 사용하여 콘솔 기반 애플리케이션을 만드는 방법을 살펴보았습니다. 그러나 실제 시나리오에서 팀은 일반적으로 Visual Studio와 C#을 사용하여 Windows Forms 또는 웹 기반 응용 프로그램을 만듭니다. Windows 양식 응용 프로그램은 컴퓨터에서 실행되도록 설계된 응용 프로그램입니다. 웹 응용 프로그램이 되기 때문에 웹 브라우저에서 실행되지 않습니다. 이 자습서에서는 Windows 기반 응용 프로그램을 만드는 방법에 중점을 둘 것입니다. 또한 C# Windows 응용 프로그램의 다양한 요소를 사용하
C에서 malloc이란 무엇입니까? malloc() 함수는 메모리 할당을 나타냅니다. 메모리 블록을 동적으로 할당하는 데 사용되는 함수입니다. 지정된 크기의 메모리 공간을 예약하고 메모리 위치를 가리키는 널 포인터를 반환합니다. 반환된 포인터는 일반적으로 void 유형입니다. 그것은 우리가 모든 포인터에 malloc 함수를 할당할 수 있다는 것을 의미합니다. 구문 ptr = (cast_type *) malloc (byte_size); 여기, ptr은 cast_type의 포인터입니다. malloc 함수는 할당된 byte_s