Thursday, July 4, 2019

Menyalin alamat dengan pointer



Pointer adalah variable yang berisi alamat memory sebagai nilainya dan berbeda dengan variable biasa yang berisi nilai tertentu. Dengan kata lain, pointer berisi alamat dari variable yang mempunyai nilai tertentu. Pada kesempatan kali ini saya akan membahas mengenai penyalinan alamat sebuah variabel A ke variabel B sehingga variabel B akan memiliki nilai atau isi yang sama dengan variabel A.

Sebelum kita mulai adabaiknya kita mengenai sedikit tentang pointer agar kita dapat memahami fungsi dari pointer tersendiri, berikut merupakan beberapa ulasan singkat mengenai pointer, semoga bermanfaat.
  • Pointer adalah built-in type di C dan C++, dimana C++ mengambil konsep pointer dari C. Pointer sebenarnya sangat terkait dengan "Abstract C Machine", yaitu model mesin abstrak dimana program C bekerja. Abstract C Machine adalah mesin abstrak dimana mesin tersebut memiliki prosesor untuk   menginterpretasikan   stream   of   instruction,   dan   addressable memory  yang  terbagi  kedalam  3  bagian  :  automatic  memory,  static memory  dan  free  memory. 
    Addressable memory adalah memory  yang konten-nya  dapat  diambil  jika  diketahui  alamatnya.  Lebih  jauh  lagi, terdapat asumsi bahwa konten memori dapat di ambil dengan waktu konstan, tidak peduli berapa nilai alamat.Hal ini disebut dengan Random Access Memory.
  • Pointer  adalah  sebuah  variabel  yang  berisi  alamat  lain.  Suatu  pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah.
  • Arti pointer dalam bahasa sehari-hari adalah putunjuk atau bisa di bilang penentu atau pointer secara sederhana bisa diartikan sebagai tipe data yang nilainya mengarah pada nilai yang terdapat pada sebuah area memori (alamat memori).namun dalam
  • Dalam  bahasa  C,  Pointer  bisa  berfungsi  sebagai  variabel  array  berarti pointer sebagai penunjuk elemen array ke-0 dalam variabel C. 
Pada pembahasan kali ini kita akan mensubstitusikan  address  sebuah  variabel  kepointer  dengan  memakai  address ,operator '&' Contohnya sebagai berikut:
int x;
int *ptr;
ptr = &x;

Dibawah ini merupakan sebuah program sederhana penukaran isi variabel dengan mensubstitusikan adress ke pointer

//TukarIsi
#include <iostream>
using namespace std;
void kiw(int *a, int *b){
int amp;
amp=*a;
*a=*b;
*b=amp;
}
main(void){
int p=9, q=0;
//Output
cout<<p<<endl<<q<<endl;
cout<<"--\n";
kiw(&p,&q);
cout<<p<<endl<<q<<endl;
}

OUTPUT

Sekian pembahasan mengenai penukaran nilai menggunakan pointer, semoga artikel ini bermanfaat dan dapat menambah wawasan kita semua. Terimakasih atas kunjungan kalian semua.
NEXT ARTICLE Next Post
PREVIOUS ARTICLE Previous Post
NEXT ARTICLE Next Post
PREVIOUS ARTICLE Previous Post
 
banner