PENGERTIAN STRUCT DAN UNION BESERTA CONTOHNYA
STRUKTUR / STRUCT
Struktur adalah sekumpulan variabel yang masing-masing dapat berbeda tipe,
dan dikelompokkan ke dalam satu nama (menurut Pascal, struktur juga dikenal
sebagai record). Struktur membantu mengatur data-data yang rumit, khususnya
dalam program yang besar, karena struktur membiarkan sekelompok variabel
diperlakukan sebagai satu unit daripada sebagai entity yang terpisah.
Contoh :
Struct mahasiswa memiliki nim, nama, gender.
nim : bisa didefinisikan sebagai angka atau integer
nama : bisa didefinisikan sebagai char[20]
gender : bisa didefinisikan sebagai char[10]
Bentuk Umum Struktur :
struct nama_Struktur {
(elemen_Struktur);
....
....
}
Contoh Deklarasi :
struct mahasiswa
{
//isi dari tipe
data bentukan mahasiswa
int nim;
char nama[20];
char
gender[10];
};
Contoh Pengaplikasian Struct dalam
Program :
#include <iostream>
using namespace std;
int main()
{
//deklarasi struct dengan nama mahasiswa
struct
mahasiswa
{
//isi dari tipe data bentukan mahasiswa
int nim;
char nama[20];
char
gender[10];
};
//inisialisasi mhs ke tipe
data mahasiswa dengan arraynya
mahasiswa mhs[2];
//perulangan untuk
menginputkan
for (int i = 0;
i<2; i++)
{
cout
<<"NIM : ";
cin>>mhs[i].nim;
cout
<<"Nama : ";
cin>>mhs[i].nama;
cout <<"Jenis
Kelamin : ";
cin>>mhs[i].gender;
}
//perulangan untuk
menampilkan
for (int i=0;
i<2; i++)
{
cout<<"==========================
\n";
cout<<"NIM
: "<<mhs[i].nim<<endl;
cout<<"Nama
: "<<mhs[i].nama<<endl;
cout<<"Jenis
Kelamin : "<<mhs[i].gender<<endl;
}
return 0;
}
Hasil Eksekusi Program :
UNION
Sama seperti struct, union juga merupakan tipe data
yang dibangkitkan, dimana anggotanya menggunakan secara bersama ruang
penyimpanan memori yang sama, berbeda dengan struktur yang masing-masing
variabel menempati lokasi memori yang berbeda.
Jumlah bytes yang digunakan untuk menyimpan union
adalah sedikitnya cukup untuk menyimpan data terbesar yang ditangani. Tipe
union umumnya digunakan untuk menangani satu, dua, atau tiga variabel dengan
tipe yang mirip.
Kegunaan :
menghemat pemakaian system memory.juga berguna untuk low level
programming.
Bentuk Umum Struktur :
Union nama_union {
(elemen_Union);
....
....
}
Contoh Deklarasi :
union MyUnion
{
//unsigned (tak bertanda)
-> hanya bilangan positif saja
unsigned int x;
unsigned char y[2];
};
Pada pendeklarasian
seperti ini, x dan y menempati memori yang sama. int = 4 byte dan char = 1 byte
. dalam hal ini yang disediakan 4 byte memory atau 32 bit memory.
Contoh Pengaplikasian Struct dalam
Program :
#include <iostream>
using namespace std;
#include <conio.h>
#include <iomanip> //setiosflags
union MyUnion
{
//unsigned (tak bertanda)
-> hanya bilangan positif saja
unsigned int x;
unsigned char y[2];
};
int main()
{
union MyUnion init = {
0x1441 };
cout<<"Berbagi memori dengan union"<<endl;
cout<<"---------------------------"<<endl;
//ios::showbase ->
menunjukkan basis bilangannnya
//hex -> basis 16
(heksadesimal)
cout<<setiosflags(ios::showbase);
cout<<hex<<"x
: "<<init.x<<endl;
cout<<hex<<"y[0] :
"<<(int)init.y[0]<<endl;
cout<<hex<<"y[1] :
"<<(int)init.y[1]<<endl;
return 0;
}
Hasil Eksekusi Program :
Baca Juga :