People Innovation Excellence
 
Feature Image

Passing Parameter

Sebuah program biasanya terdiri dari beberapa fungsi. Fungsi-fungsi ini dapat memiliki parameter maupun tidak.

Pada umumnya, parameter dapat dibedakan menjadi dua jenis:

  1. Formal Parameter
  2. Actual Parameter

Perhatikan contoh di bawah ini, dimana program dibuat dalam Bahasa pemrograman C:

Bila kita lihat dari contoh di atas, kita melakukan pengiriman (passing) parameter berupa nilai dari x.

Secara umum, passing parameter dibagi menjadi dua jenis:

  1. Passing by Value
  2. Passing by Reference

Berdasarkan contoh di atas, passing parameter yang dilakukan adalah passing by value.

Passing by value merupakan pengiriman parameter yang dilakukan dengan meng-copy-kan value dari actual parameter (dari pemanggil/caller) ke formal parameter (function). Perubahan yang terjadi di dalam function tidak akan mempengaruhi nilai asli pemanggilnya.

Perhatikan contoh berikut ini untuk lebih jelasnya.

Pada contoh di atas ini, dibuat sebuah fungsi swap yang menerima 2 parameter  yakni int a, dan int b, dan bertujuan untuk menukar isi dari a dan b.

Bila kita jalankan program ini, maka output program adalah: “x = 7 dan y = 10”.

Hal ini terjadi dikarenakan perubahan nilai hanya terjadi di dalam fungsi swap. Dimana bila kita mencetak data a dan b di sana, nilai memang benar sudah terganti. Namun dikarenakan kita mengirimkan copy value dari nilai tersebut, maka tidak mempengaruhi x dan y dari sisi pemanggil.

Untuk menyelesaikan permasalahan di atas, kita dapat melakukan passing by reference, seperti contoh di bawah ini:

Dalam passing by reference, actual parameter yang kita kirimkan adalah alamat memori (memory address dari variable yang diinginkan), dan formal parameternya merupakan pointer yang menunjuk ke alamat memori tersebut. Dengan demikian perubahan yang dilakukan akan mempengaruhi nilai pada alamat yang ditunjuk (yakni alamat x dan y yang merupakan pemanggilnya).

Dengan demikian bila program di atas dieksekusi, output yang akan dihasilkan adalah“x = 10 dan y = 7”.


Published at : Updated
Written By
Rini Wongso, S.Kom., M.T.I
Subject Content Coordinator Intelligent Systems | School of Computer Science

Periksa Browser Anda

Check Your Browser

Situs ini tidak lagi mendukung penggunaan browser dengan teknologi tertinggal.

Apabila Anda melihat pesan ini, berarti Anda masih menggunakan browser Internet Explorer seri 8 / 7 / 6 / ...

Sebagai informasi, browser yang anda gunakan ini tidaklah aman dan tidak dapat menampilkan teknologi CSS terakhir yang dapat membuat sebuah situs tampil lebih baik. Bahkan Microsoft sebagai pembuatnya, telah merekomendasikan agar menggunakan browser yang lebih modern.

Untuk tampilan yang lebih baik, gunakan salah satu browser berikut. Download dan Install, seluruhnya gratis untuk digunakan.

We're Moving Forward.

This Site Is No Longer Supporting Out-of Date Browser.

If you are viewing this message, it means that you are currently using Internet Explorer 8 / 7 / 6 / below to access this site. FYI, it is unsafe and unable to render the latest CSS improvements. Even Microsoft, its creator, wants you to install more modern browser.

Best viewed with one of these browser instead. It is totally free.

  1. Google Chrome
  2. Mozilla Firefox
  3. Opera
  4. Internet Explorer 9
Close