Tif 12B

Teknik Informatika 12B UNIROW Tuban-Jawa Timur

BAB X DATA TINGKAT LANJUT

PERHATIAN : Penulis Sekedar Berbagi Pengetahuan melalui tulisan ini. Kiranya bermanfaat Silahkan diBagikan, Namun Harus menyertakan Link sumber
Kunjungi Channel : = > YOUTUBE(Video Menarik), Jangan Lupa Subscribe/Langganan Untuk mendapatkan Video Menarik dan bermanfaat


10.1 Union
Pada C, union memungkinkan suatu lokasi memori ditempati oleh dua atau lebih variabel yang bisa saja tipenya berlainan.  Di bawah ini diberikan contoh pendefinisian tipe union yang dinamakan sebagai bil_bulat, yang digunakan untuk menyatakan data bertipe karakter atau integer.

union bil_bulat {
unsigned int di;
unsigned char dc[2];
};

Berikutnya, pendeklarasian suatu variabel union bernama bil_x yang bertipe bil_bulat dilakukan dengan cara penulisan sebagai berikut

            union bil_bulat bil_x;

Catatan : Cara lain untuk mendefinisikan atau mendeklarasikan union adalah seperti pada struktur.

Pemrogaman c/c++ data tingkat lanjut


Dalam hal ini, kompiler dengan bijaksana akan menyediakan ruangan yang cukup untuk menampung field atau elemen pada union yang membutuhkan memori paling besar.  Pada pendeklarasian variabel bil_x misalnya, memori yang ditempati variabel ini adalah 2 byte (yaitu ukuran dari tipe int).  Seandainya tipe elemen dalam union berupa float, int dan char, memori yang dibutuhkan adalah sebesar ukuran float.
Elemen dari sebuah union dapat diakses dalam bentuk sebagai berikut :



 
variabel_union.nama_elemen
 


misal : bil_x.di = 321;
adalah contoh untuk mengisikan 321 ke elemen union bernama di.  Dengan pengisian nilai ini, maka dc[0] akan bernilai byte ke-0 dari di, sedangkan dc[1] bernilai byte ke-1 dari di.



/* File program : union1.c
Contoh pendeklarasian dan pengaksesan variabel union */

#include <stdio.h>

main()
{
     union
     {
          unsigned int di;
          unsigned char dc[2];
     } bil_x;  /* variabel union */
         
     bil_x.di = 321;

     printf("di = %d dc[0] = %d dc[1] = %d\n", bil_x.di,
          bil_x.dc[0], bil_x.dc[1]);
}



Contoh eksekusi :

di = 321  dc[0] = 65 dc[1] = 1

 #Materi Selengkapnya Silahkan Didownload => BAB X DATA TINGKAT LANJUT
Previous
Next Post »
0 Komentar untuk "BAB X DATA TINGKAT LANJUT"

Terima Kasih Sudah Berkomentar
 
Copyright © 2012 - Sekarang Tif 12B - All Rights Reserved
Template By Kuncidunia