Page 149 - PEMROGRAMAN DASAR MENGGUNAKAN C
P. 149

alamat dari suatu variabel di dalam bahasa C. Caranya adalah dengan menggunakan
                      operator  & di  depan  nama  variabel  tersebut.  Sebagai  contoh,  apabila  kita  memiliki
                      variabel X yang bertipe int dan pointer P yang akan menujuk ke tipe data int, maka
                      sintak program yang akan digunakan untuk mendapatkan alamat dari variabel X tersebut
                      dan memasukkannya ke dalam pointer P adalah sebagai berikut.


                      int X;        /* Mendeklarasikan variabel X dengan tipe int */
                      int *P;       /* Mendeklarasikan pointer P yang akan menunjuk
                                        ke tipe int */

                      P = &X;       /* Mendapatkan alamat dari variabel X dengan cara
                                        menuliskan &X dan
                                        menyimpan alamat tersebut ke dalam pointer P */


                      Setelah  mengetahui  hal  di  atas,  mungkin  Anda  akan  berfikir  bagaimana  cara  untuk
                      mendapatkan  nilai  apabila  yang  diketahui  hanya  alamat  yang  ditempatinya  saja?
                      Jawabnya  adalah  dengan  melakukan  dereference  pointer.  Menurut  definisinya,
                      dereference pointer adalah proses pengambilan nilai dari suatu alamat memori melalui
                      sebuah  pointer.  Adapun  cara  untuk  mengambil  nilai  tersebut  adalah  dengan
                      menambahkan tanda asterisk (*) di depan nama pointer tersebut. Sebagai contoh apabila
                      kita  memiliki  pointer  P yang  telah  menunjuk  ke  alamat  tertentu,  kemudian  kita  ingin
                      mengambil nilai yang terdapat di dalam alamat tersebut untuk dimasukkan ke dalam
                      variabel Y, maka sintak yang harus dituliskan adalah sebagai berikut.


                      Y = *P;


                      Agar Anda dapat lebih memahami tentang konsep pointer, perhatikan gambar di bawah
                      ini yang akan menunjukkan hubungan pointer dengan sebuah variabel.

                                                            Alamat memori          nilai  …
                            Pointer P                      0065FDFC  X=10          X=10

                                                        …  …  void                 …

                                      Gambar 7.3. Pointer yang menunjuk ke alamat memori tertentu

                      Pada gambar di atas, terdapat pointer yang sedang menunjuk ke suatu alamat (misalnya
                      0065FDFC),  dimana  alamat  tersebut  ditempati  oleh  variabel  X yang  bernilai  10,  maka
                      untuk mendapatkan nilai 10 tersebut kita dapat menggunakan dereference pointer, yaitu
                      dengan menuliskan *P. Dengan demikian, kita dapat menyimpulkan bahwa apabila


                      P = &X;       /* Keduanya menyimpan alamat (yaitu 0065FDFC) */
   144   145   146   147   148   149   150   151   152   153   154