Translate

tutorial pointer lengkap

Selamat datang di eagleboot dan selamat membaca.

BAB 13 POINTER  

13.1 Pemrograman pointer 
13.2 Deklarasi variabel bertipe pointer  
13.3 Inisialisasi Pointer  
13.4 Pointer untuk fungsi  
13.5 Mengakses dan Mengubah isi Pointer  
13.6 Array dan Pointer
 13.7 Pointer dalam Fungsi  
13.8 Fungsi Pointer ke Static Class Member Function  
13.9 Fungsi Pointer pada Class anggota Fungsi Non-static.

13.1. Pemrograman pointer

 Pada programmer pemula hal yang sulit dipahami adalah pointer. Pointer adalah pada dasarnya sama dengan veriabel lain. Dengan pointer setiap variable diletakan pada alamat memori yang besarnya cukup untuk menampung nilai dari sebuah variable tipe data. Pada sebuah komputer PC misalnya satu byte data secara umum dialokasikan untuk tipe data char, 2 byte untuk tipe data short, 4 byte untuk tipa data int, long dan float serta 8 byte untuk tipe data double. Tiap-tiap byte data memori mempunyai alamat yang unik. Sebuah variable alamat  merupakan alamat dimana sebuah byte data pertama dapat dialokasikan. Sebagai contoh misalnya dapat didefinisikan dalam program sebagai berikut; charhuruf; shortangka; floatamount;  sehingga pengaturan memorinya dapat diilustrasikan sebagai berikut 


Pada gambar diatas variable letter diletakan pada alamat 1200, number pada alamat 1201 dan amount pada alamat 1203. Ketika programmer mendeklarasikan sebuah variable, sama halnya dengan menginformasikan compiler dua sesuatu yaitu : nama variable dan tipe variable. Misalnya kita akan mendeklarasikan tipe variable integer dengan nama variable k sehingga dapat ditulis: Intk  Pada tipe variable integer merupakan tipe data yang digunakan compiler dimana memori yang terpakai adalah dua byte. Setiap kali komputer menyimpan data, maka sistem operasi akan mengorganisasikan lokasi pada memori pada alamat yang unik. Misal untuk alamat memori 1776, hanya sebuah lokasi yang memiliki alamat tersebut. Dan alamat 1776 pasti terletak antara 1775 dan 1777. Dalam pointer, terdapat 2 jenis operator yang biasa digunakan. Kegunaan pointer yang utama adalah untuk menyimpan alamat memori dari sebuah variabel (data type atau object dari class). Selain menyimpan alamat dari variabel, pointer juga dapat digunakan untuk menyimpan alamat dari sebuah fungsi (function pointer).  Function pointer telah digunakan sejak dikenalkannya bahasa C, dan banyak digunakan untuk sebuah fungsi callback atau untuk meningkatkan readability dari sebuah code  Anda dapat memperlakukan function pointer seperti pointer biasa (pointer ke datatype/object), anda dapat menyimpan,mengirimkan, merubah address, atau meng- evaluasi address dari pointer ke fungsi ini dengan sifat tambahan anda dapat memanggil fungsi yang ditunjuk oleh function pointer.  Setiap variabel yang dideklarasikan, disimpan dalam sebuah lokasi memori dan pengguna biasanya tidak mengetahui di alamat mana data tersebut disimpan. Dalam C++, untuk mengetahui alamat tempat penyimpanan data, dapat digunakan tanda ampersand (&) yang dapat diartikan “alamat”. Sebenarnya jika programer akan mendeklarasian sebuah variable, seorang programer tidak diharuskan menentukan lokasi sesungguhnya pada memory, karena hal ini akan dilakukan secara otomatis oleh kompiler dan operating sysem pada saat run-time.  Jika ingin mengetahui dimana suatu variable akan disimpan, dapat dilakukan dengan memberikan tanda ampersand (&) didepan variable , yang berarti "address of". Perhatikan contoh dibawah ini:  ted=&andy;  Akan memberikan variable ted alamat dari variable andy, karena variable andy diberi awalan karakter ampersand (&), maka yang menjadi pokok disini adalah alamat dalam memory, bukan isi variable. Misalkan andy diletakkan pada alamat 1776 kemudian dituliskan instruksi sebagai berikut :  andy=25; fred=andy; ted=&andy;  Maka hasilnya adalah sebagai berikut:   andy  25  177517761777   Fred  Ted  25  1776   

Next read halaman 2.

Share this

Related Posts

Previous
Next Post »