Page 160 - Project Akhir Media Pendidikan
P. 160

dua  buah  pointer sebagai parameternya.  Adapun sintak  pendefinisannya  adalah  sebagai
                      berikut.


                      void Tukar(int *px, int *py) {
                         int temp = *px;
                         *px = *py;
                         *py = temp;
                      }



                      Adapun contoh  sintak  yang  melakukan  pemanggilan fungsi tersebut adalah sebagai
                      berikut.


                      int a, b; /* variabel untuk menyimpan nilai yang akan
                                        ditukar */

                      Tukar(&a, &b);


                      Sintak di atas akan menukarkan nilai yang terdapat di dalam dua buah alamat memori, yaitu
                      alamat dari variabel a dan variabel b. Di sini pointer px akan menunjuk ke alamat dari
                      variabel a (&a, sebut saja dengan alamat_A), sedangkan pointer py menunjuk ke alamat
                      dari variabel  b (&b, sebut saja dengan  alamat_B). Setelah itu, nilai yang terdapat pada
                      alamat_A akan ditukarkan dengan nilai yang terdapat pada alamat_B melalui variabel
                      bantu,  yaitu  variabel  temp.  Hal  inilah  yang  menyebabkan  setelah  pemanggilan  fungsi
                      Tukar(), maka nilai a dan b akan tertukar. Situasi ini dapat kita representasikan dengan
                      gambar berikut.

                                          Di dalam fungsi Tukar():

                                                        px   •

                                                            •



                                               Pada saat pemanggilan:

                                                             a

                                                             b



                                    Gambar 7.5. Menukarkan dua buah nilai dengan menggunakan pointer

                      Berikut ini  contoh  program  yang akan  membuktikan  hal  di atas.  Adapun  sintaknya
                      adalah sebagai berikut.


                      #include <stdio.h>


                                                          156
   155   156   157   158   159   160   161   162   163   164   165