> 백엔드 개발 > C++ > 본문

C 언어의 공용체 포인터 설명

王林
풀어 주다: 2023-09-12 13:45:04
앞으로
628명이 탐색했습니다.

C 언어의 공용체 포인터 설명

공용체는 다양한 데이터 유형의 여러 변수가 공유하는 메모리 위치입니다.

Syntax

C 프로그래밍에서 Union을 가리키는 포인터의 문법은 다음과 같습니다. -

union uniontag{
   datatype member 1;
   datatype member 2;
   ----
   ----
   datatype member n;
};
로그인 후 복사

Example

다음 예는 구조체의 Union 사용법을 보여줍니다.

union sample{
   int a;
   float b;
   char c;
};
로그인 후 복사

결합변수 선언

다음은 결합변수 선언입니다. 다음과 같이 세 가지 유형이 있습니다. −

Type 1

union sample{
   int a;
   float b;
   char c;
}s;
로그인 후 복사

Type 2

는 다음과 같이 번역됩니다.

Type 2

union{
   int a;
   float b;
   char c;
}s;
로그인 후 복사

Type 3

은 다음과 같이 번역됩니다.

Type 3

union sample{
   int a;
   float b;
   char c;
};
union sample s;
로그인 후 복사
  • Union이 선언되면 컴파일합니다. 컴파일러는 공용체의 변수를 수용할 수 있도록 가장 큰 크기의 변수 유형을 자동으로 생성합니다.

  • 언제든지 하나의 변수만 참조할 수 있습니다.

  • 조합원에 액세스하려면 동일한 구조 구문을 사용하세요.

  • 점 연산자는 회원 액세스에 사용됩니다.

  • 화살표 연산자(->)는 포인터를 사용하여 멤버에 액세스하는 데 사용됩니다.

공용체에 대한 포인터를 사용하고 화살표 연산자(->)를 사용하여 구조체처럼 멤버에 액세스할 수 있습니다.

예제

다음 프로그램은 C 프로그래밍에서 공용체에 대한 포인터 사용법을 보여줍니다. -

Live Demo

#include <stdio.h>
union pointer {
   int num;
   char a;
};
int main(){
   union pointer p1;
   p1.num = 75;
   // p2 is a pointer to union p1
   union pointer* p2 = &p1;
   // Accessing union members using pointer
   printf("%d %c", p2->num, p2->a);
   return 0;
}
로그인 후 복사

Output

위 프로그램을 실행하면 다음과 같은 결과가 생성됩니다. −

75 K
로그인 후 복사

예제 2

Consider 다른 입력을 사용한 동일한 예입니다.

라이브 데모

#include <stdio.h>
union pointer {
   int num;
   char a;
};
int main(){
   union pointer p1;
   p1.num = 90;
   // p2 is a pointer to union p1
   union pointer* p2 = &p1;
   // Accessing union members using pointer
   printf("%d %c", p2->num, p2->a);
   return 0;
}
로그인 후 복사

Output

위 프로그램이 실행되면 다음과 같은 결과가 나옵니다 −

90 Z
로그인 후 복사

위 내용은 C 언어의 공용체 포인터 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿