Rumah > pembangunan bahagian belakang > C++ > Terangkan penunjuk kesatuan dalam bahasa C

Terangkan penunjuk kesatuan dalam bahasa C

王林
Lepaskan: 2023-09-12 13:45:04
ke hadapan
644 orang telah melayarinya

Terangkan penunjuk kesatuan dalam bahasa C

Kesatuan ialah lokasi memori yang dikongsi oleh berbilang pembolehubah jenis data yang berbeza.

Sintaks

Sintaks penuding kepada kesatuan dalam pengaturcaraan C adalah seperti berikut-

union uniontag{
   datatype member 1;
   datatype member 2;
   ----
   ----
   datatype member n;
};
Salin selepas log masuk

Contoh #🎜#🎜##🎜🎜🎜🎜 contoh menunjukkan Memahami penggunaan kesatuan struktur.

union sample{
   int a;
   float b;
   char c;
};
Salin selepas log masuk

Pengisytiharan pembolehubah bersama

Berikut ialah pengisytiharan pembolehubah bersama. Ia mempunyai tiga jenis seperti berikut −

Type 1

union sample{
   int a;
   float b;
   char c;
}s;
Salin selepas log masuk

Type 2

diterjemahkan sebagai:

Type 2#🎜 daripada 🎜🎜#Type 3

ialah:

Type 3

union{
   int a;
   float b;
   char c;
}s;
Salin selepas log masuk

Apabila mengisytiharkan saiz pembolehubah secara automatik, pengkompil akan mencipta gabungan secara automatik untuk memegang pembolehubah dalam kesatuan.

  • Hanya satu pembolehubah boleh dirujuk pada bila-bila masa.

  • Gunakan sintaks struktur yang sama untuk mengakses ahli kesatuan.

  • Pengendali titik digunakan untuk mengakses ahli.

  • Pengendali anak panah (->) digunakan untuk mengakses ahli menggunakan penunjuk.

  • Kita boleh menggunakan penunjuk kepada kesatuan dan menggunakan pengendali anak panah (->) untuk mengakses ahli, sama seperti struct.

  • Contoh

Program berikut menunjukkan penggunaan penunjuk kepada kesatuan dalam pengaturcaraan C -

Live Demo

union sample{
   int a;
   float b;
   char c;
};
union sample s;
Salin selepas log masuk
# 🎜 Output

Apabila program di atas dilaksanakan, ia menghasilkan hasil berikut −

#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;
}
Salin selepas log masuk

Contoh 2

Pertimbangkan contoh yang sama dengan input yang berbeza

Demonstrasi masa nyata

75 K
Salin selepas log masuk
Output

Apabila program di atas dilaksanakan, ia menghasilkan keputusan berikut −#🎜🎜🎜🎜 🎜#

Atas ialah kandungan terperinci Terangkan penunjuk kesatuan dalam bahasa C. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan