Page 197 - Project Akhir Media Pendidikan
P. 197

Untuk membuktikan hal tersebut, Anda dapat menuliskan program lengkap di bawah
                      ini.


                      #include <stdio.h>
                      #include <string.h>

                      typedef struct {
                         char NIM[8];
                         char nama[25];
                         char alamat[40];
                      } SISWA;

                      int main(void) {
                         SISWA S, *P;

                         P = (SISWA *) malloc(sizeof(SISWA));
                         P = &S;

                         strcpy(S.NIM, “D0D99021”);
                         strcpy(S.nama, “Arista Destriana”);
                         strcpy(S.alamat, “Jl. Kopo 46, Bandung”);

                         printf(“NIM \t: %.8s\n”, P->NIM);
                         printf(“Nama \t: %.25s\n”, P->nama);
                         printf(“Alamat \t: %.45s\n”, P->alamat);

                         free(P);
                         return 0;
                      }


                      Hasil dari program di atas adalah sebagai berikut.


                      NIM  : D0D99021
                      Nama : Arista Destriana
                      Alamat: Jl. Kopo 46, Bandung



                      8.7.  Union

                      Union sebenarnya adalah suatu struktur dan cara kerjanya pun sama dengan sebuah struktur.
                      Namun perbedaannya hanya terletak pada ruang memori yang dialokasikan  untuk  setiap
                      field-nya.  Pada  struktur  setiap  field-nya  mempunyai  ruang  memori tersendiri sedangkan
                      pada union semua field-nya mengacu ke satu buah alamat yang  sama. Begitu juga dengan
                      ukuran  memorinya,  pada  struktur  setiap  field  memiliki  ukuran  memori  tersendiri
                      sedangkan pada union ukuran yang ada akan dipakai oleh  semua  field  yang  terdapat  di
                      dalamnya,  tentunya  secara  bergantian.  Untuk  mendefinisikan  suatu  union,  kita  harus
                      menambahkan kata kunci union di depan nama union  yang  akan  dedefinisikan  tersebut.
                      Berikut  ini  bentuk  umumnya.



                                                          193
   192   193   194   195   196   197   198   199   200   201   202