Menukar Nilai dari Dua Variable dengan Menggunakan Pointer
Di dalam pemrograman dengan menggunakan bahasa C, salah satu karakter yang perlu diketahui adalah C melewatkan argumen ke fungsi dengan menggunakan nilai atau value (call-by-value). Sehingga tidak ada cara yang langsung mengubah isi variabel yang berasal dari program yang memanggil suatu fungsi untuk mengubah variabel tersebut. Berikut ini adalah contoh fungsi bernama swap yang digunakan untuk menukar dua buah elemen yang tidak berurutan pada suatu deret.
Fungsi tersebut diatas tidak cukup untuk melakukan aksi yang diinginkan karena sifat dari call-by-value dimana fungsi diatas tidak dapat mempengaruhi nilai dari variabel a dan b di dalam suatu rutin yang memanggilnya. Fungsi tersebut diatas hanya memindahkan salinan dari variabel a dan b.
Untuk mendapatkan aksi dari fungsi swap yang diinginkan, maka program yang memanggil fungsi swap melewatkan pointer ke variabel nilai yang akan diubah dengan cara,
Dimana operator & memberikan alamat dari variabel yang bersangkutan,
Pustaka
Ritchie, D. M., Kernighan, B. W., & Lesk, M. E. (1988). The C programming language. Englewood Cliffs: Prentice Hall.