27 Şubat 2017 Pazartesi

Birlikler (Union)


Birlikler de yapılar gibi sürekli belleğe yerleşen nesnelerdir.
Birlikler yapılara göre daha az kullanılırlar. Bir programda veya fonksiyonda değişkenlerin aynı bellek alanını paylaşması için ortaklık bildirimi union deyimi ile yapılır. Bu yer, birliğin en büyük alanı kadardır.
Bu da belleğin daha verimli kullanılmasına imkan verir.
Bu tipte bildirim yapılırken struct yerine union yazılır.


Örnek:

union test
{
      int x;
      char y[10];
} p

Bu tanıma göre x tamsayısı için bellekte 4 baytlık yer ayrılmaktadır.
Birlik içinde yer alan y değişkeni için 10 baytlık yer ayrılmıştır.
Bu durumda, birlik için en fazla 10 baytlık bir yer ayrılmıştır. Ayrılan bu alan, birliğin her bir alanı tarafından ortak kullanılır.