Program Call by Value C++ - nblognlife

Program Call by Value C++

Contoh Program Call by Value C++

Hal-hal yang perlu diketahui tentang Pemanggilan Secara Nilai (Call by Value)
  • Call by value akan menyalin nilai dari parameter aktual ke parameter formal.
  • Yang dikirimkan ke fungsi adalah nilai dari datanya, bukan alamat memori letak dari datanya
  • Fungsi yang menerima kiriman nilai akan menyimpannya di alamat terpisah dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsinya.
  • Perubahan nilai di fungsi (parameter formal) tidak akan merubah nilai asli di bagian program yang memanggilnya.
  • Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil.

Berikut contoh program C++ Call by Value :
/*
       Program Call by Value
       Microsoft Visual Studio Express 2012
       N.N. Blog
*/
#include <iostream>
using namespace std;
#include <conio.h>

void Vtukar (int bil1, int bil2)
{
       int temp;
       temp = bil1;
       bil1 = bil2;
       bil2 = temp;
       cout<<"Nilai pada saat berada di fungsi Vtukar : "<<endl;
       cout<<"Nilai bilangan 1 = "<<bil1<<" | Alamat bilangan 1 = "<<&bil1<<endl;
       cout<<"Nilai bilangan 2 = "<<bil2<<" | Alamat bilangan 2 = "<<&bil2<<endl;
       cout<<endl;
}

int main()
{
       int bil1,bil2;
       bil1 = 7;
       bil2 = 6;

       cout<<"\tCALL BY VALUE"<<endl;
       cout<<"\t-------------"<<endl;
       cout<<"\nNilai sebelum pemanggilan fungsi Vtukar : "<<endl;
       cout<<"Nilai bilangan 1 = "<<bil1<<" | Alamat bilangan 1 = "<<&bil1<<endl;
       cout<<"Nilai bilangan 2 = "<<bil2<<" | Alamat bilangan 2 = "<<&bil2<<endl;
       cout<<endl;

       Vtukar (bil1,bil2);

       cout<<"Nilai setelah pemanggilan fungsi Vtukar : "<<endl;
       cout<<"Nilai bilangan 1 = "<<bil1<<" | Alamat bilangan 1 = "<<&bil1<<endl;
       cout<<"Nilai bilangan 2 = "<<bil2<<" | Alamat bilangan 2 = "<<&bil2<<endl;
       cout<<endl;

       _getche();
       return EXIT_SUCCESS;
}

Output
       CALL BY VALUE
       -------------

Nilai sebelum pemanggilan fungsi Vtukar :
Nilai bilangan 1 = 7 | Alamat bilangan 1 = 00AEFE40
Nilai bilangan 2 = 6 | Alamat bilangan 2 = 00AEFE34

Nilai pada saat berada di fungsi Vtukar :
Nilai bilangan 1 = 6 | Alamat bilangan 1 = 00AEFD5C
Nilai bilangan 2 = 7 | Alamat bilangan 2 = 00AEFD60

Nilai setelah pemanggilan fungsi Vtukar :
Nilai bilangan 1 = 7 | Alamat bilangan 1 = 00AEFE40
Nilai bilangan 2 = 6 | Alamat bilangan 2 = 00AEFE34


Karena pemanggilan menggunakan value(nilai) maka pengubahan nilai variabel pada fungsi Vtukar hanya akan berlaku pada fungsi Vtukar saja, ketika berada di fungsi main nilai variabel tetap seperti inisialisasi awal.

[RS]

Klik Like & Share jika postingan ini bermanfaat
Apa tanggapan Anda?

Berikan tanggapan Anda melalui kolom komentar yang telah disediakan.
- Gunakan bahasa yang sopan;
- Saat menjadikan postingan pada blog ini sebagai referensi, jangan lupa mencantumkan sumbernya (link dari blog ini).

Jika blog ini bermanfaat jangan lupa memberikan 'like' atau 'share' untuk mendapatkan update terbaru.

Terima kasih