Soal Latihan OPERASI FILE

432 Direktorat Pembinaan SMK | 2008 2008 | Direktorat Pembinaan SMK 433 BAB 13 POINTER

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; char huruf; short angka; float amount; sehingga pengaturan memorinya dapat diilustrasikan sebagai berikut 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.10 Soal Latihan 434 Direktorat Pembinaan SMK | 2008 huruf angka amount 1200 1201 1203 Gambar 13.1. Ilustrasi Pengaturan Data Pada Sebuah Memori 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: Int k 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 datatypeobject, 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