Structures and Unions & Memory Allocation

Structure

Struktur adalah tipe data untuk menyimpan sekelompok data dengan berbagai tipe data.Komponen struktur disebut anggota /  elemen. Struktur bersift heterogen (berbagai tipe jenis data ) .Struktur dalam bahasa pemrograman lain juga disebut record.

Structure Declaration

struct name_structure {
    dataType1 name_field1;
    dataType2 name_field2;
   
};
bisa juga dengan menggunakan
struct name_structure {
  dataType1 name_field1;
  dataType2 name_field2;
} name_variable_structure ;

Nested Structure

Nested Structure adalah struktur yang salah satu elemennya merupakan  struktur lain, struktur sebagai suatu anggota harus di deklarasikan dahulu.

Structure Initialization

syntax yang digunakan adalah:

struct struct_name variable = {value_1, …, value_m};

Array Of Structure

  Tipe data struktur hanya dapat berisi satu catatan. Dalam dunia nyata , membutuhkan sekelompok record. Dalam prakteknya, struktur biasanya digunakan bersama dengan array.

  Typedef

  Typedef adalah semuah nama lain(alias) berfungsi untuk menamakan pendek , terutama untuk identifier lama . Typedef biasa digunakan untuk dalam struktur
   contoh:
   typedef struct BinusStudent{
      char name[20];
      int  nim;
      float gpa;
}Mhs;

   Bit Field

    Bitfield adalah sebuah struct dengan masing masing elemen menetapkan dengan jumlah tertentu. syntax yang digunakan adalah :
    struct name{
     type  field1: numberof_bit
       …...
       };
     bitfiled ini hanya daoat digunakan untuk integer , signed integer , dan unsigned integer.

   UNION

   Union digunakan untuk menggabungkan dengan memori. Dengan menggunakan union, lokasi memori dapat ditetapkan untuk dua atau lebih variabel dengan tipe data yang berbeda kapasitas memori yang digunakan  adalah kapasitas terbesar yang digunakan oleh setiap elemen dari union.
   
   
    Syntax yang digunakan adalah :
    union name_union {
      typedata1 name_var1;
      typedata2 name_var2;
      ……
       }nama_var_union;

      Syntax yang digunakan untuk mendeklarasikan union:
       union  name_union   name_var_union;  

     Alokasi Memori

Mengalokasikan memori membutuhkan ruang memori (RAM) yang diolah oleh Operating System(OS) agar dapat digunakan oleh programmer.
       De-alokasi memori melepaskan ruang memori (RAM) kembali ke OS
         
      1.Static
      a.Disimpan dalam local stack memory
      b.Dapat ditetapkan dengan nama 
      c.Tidak dialokasikan saat program berakhir
      d.Dapat dialokasikan saat waktu kompilasi

      2.Dynamic
      a.Dapat dialokasikan saat run time
      b.disimpan dalam Heap memory
      c.Dapat dialokasikan kapan saja 

   














Comments

Popular posts from this blog

Cloud Computing

Algorithm & Introduction to C

Sorting & Searching