Kamis, 19 Januari 2017

POINTER
Yessica Amanda octafianti
Definisi Pointer Pointer sering disebut juga dengan istilah link, referensi, penunjuk adalah suatu variabel yang menyimpan atau menunjuk alamat dari suatu variabel yang lain. Pointer menunjuk suatu data yang tersimpan dalam sebuah variabel dengan cara menyimpan alamat dari variabel penyimpan data tersebut. Pointer dalam kehidupan sehari – hari dianalogikan seperti kartu alamat sesorang (KTP, atau yg lain) maka kartu tersebut dapat menunjukkan dimana orang tersebut berada, bagaimana caranya? ya tentu saja dengan menyimpan alamat tersebut pada kartu. (Kebudayaan, 2014)
Pointer (variabel penunjuk) adalah suatu variabel yang berisi alamat memori dari suatu variabel lain. Alamat ini merupakan lokasi dari obyek lain (biasanya variabel lain) di dalam memori. Contoh, jika sebuah variabel berisi alamat dari variabel lain, variabel pertama dikatakan menunjuk ke variabel kedua (BSI, 2009)
Operasi pada Pointer
• Operasi Penugasan
Suatu variable pointer seperti halnya variable yang lain, juga bisa mengalami operasi
penugasan. Nilai dari suatu variable pointer dapat disalin ke variable pointer yang lain
Operator (&) dalam kaitannya dengan pointer adalah operator yang mengembalikan alamat memori dari operandnya. Contohnya :
int y = 5; /*deklarasi variabel y*/
int *yPtr; /*deklarasi variabel pointer yPtr*/
yPtr = &y; /*mengisi variabel pointer yPtr dengan alamat dari variabel y*/ (Cicax-milanisti, 2010)
Contoh Program:
#include <stdio.h>         //Mengakses file pada library stdio.h
#include <stdlib.h>        //Mengakses file pada library stdlib.h
int main (void){             //Fungsi main yang harus ada dalam sebuah program C
   int A = 5, H;
   int *ptrA, *ptrH;         //Deklarasi pointer sebagai integer
   ptrA = &A;                //Alamat lokasi memori dari variabel A disimpan pada ptrA
   H = *ptrA;                 //Nilai data yang alamat lokasi memorinya disimpan pada ptrA, 
                                        disimpan di variabel H
   ptrH = &H;                //Alamat lokasi memori dari variabel H disimpan pada ptrH
                                     // %x menampilkan nilai hexa
  printf("A=%d\n &A=%x \n ptrA=%x \n *ptrA=%d", A, &A, ptrA, *ptrA);   
  printf("\n\nH=%d\n &H=%X\n ptrH=%X\n *ptrH=%d\n\n", H, &H, ptrH,*ptrH);
system ("pause");           //File yang terdapat pada stdlib.h
return (0);                     //Nilai balikan fungsi main() adalah 0
}
(ADITYA, 2012)
Jenis-jenis Tipe Data/ Data Type
1.     Tipe data primitive (Sederhana)
Tipe data primitive adalah Tipe data yang mampu menyimpan satu nilai tiap satu variabel. Tipe data primitive merupakan tipe data dasar yang sering dipakai oleh program. Contoh tipe data primitive  adalah tipe numerik (integer dan real), tipe data karakter/char, tipe data boolean.
A.   Numeric
Tipe data numeric digunakan pada variabel atau konstanta untuk menyimpan nilai dalam bentuk angka. Tipe data ini terbagi atas integer, dan real.
a.   Integer
Integer Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa kategori seperti table dibawah ini
Tipe Data
Ukuran Tempat
Rentang Nilai
Byte
1 byte
0 s/d +255
Shortint
1 byte
-28 s/d +127
Integer
2 bytes
-32768 s/d 32767
Word
2 bytes
0 s/d 65535
Longint
4 bytes
2147483648 s/d 2147483647

b.   Real
Real adalah bilangan yang berisi titik desimal atau jenis bilangan pecahan.
Tipe Data
Ukuran Tempat
Rentang Nilai
real
6 bytes
2.9 x 10-39 s/d 1.7 x1038
single
4 bytes
1.5 x 1045 s/d 3.4 x 1038 
double
8 bytes
5.0 x 10-324 s/d 1.7 x 10308
extended
10 bytes
3.4 x 10-4932 s/d 1.1 x 104932
comp
8 bytes
-9.2x 1018 s/d 9.2x 1018
B.   Karakter (char)
Karakter merupakan tipe data yang hanya mampu menyimpan 1 digit karakter.  Ukuran untuk tipe data karakter adalah 1 byte (1 byte = 8 bit). Adapun macam karakter yang ada sejumlah 256 macam karakter yaitu dari kode karakter (ASCII), 0 sampai dengan 255. Untuk penulisan karakter menggunakan tanda petik tunggal (‘ )  di depan dan belakang karakter yang ditulis. Contoh : ‘a’, ‘A’,’&’ dll.
Nilai-nilai yang termasuk karakter adalah :
a.      Karakter huruf : ‘a’..’z’,’A’..’Z’
b.      Karakter angka : ‘0’..’9’
c.       Karakter tanda baca : titik, koma, titik koma, titik dua dan sebagainya
d.      Karakter khusus : $, %, #, @ dan sebagainya.
C.      Boolean
Boolean merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE (benar) atau FALSE (salah). Tipe data boolean memakai memori paling kecil.
2.     Tipe data Composite
Tipe Data Komposit merupakan tipe data yang dapat menampung banyak nilai, antara lain sebagai berikut.
A.   Array
Array atau sering disebut sebagai larik, adalah tipe data yang sudah terstruktur dengan baik, meskipun masih sederhana. Array mampu menyimpan sejumlah data dengan tipe yang sama (homogen) dalam sebuah variabel. Sebagai ilustrasi, array mampu menampung banyak data namun dengan satu tipe data yang sama, misalnya integer saja. Setiap lokasi data array diberi nomor indeks yang berfungsi sebagai alamat dari data tersebut.
B.   Record atau struct
Seperti halnya Array, Record atau Struct juga termasuk tipe data komposit. Record dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal dalam bahasa C++. Berbeda dengan array, tipe data record mampu menampung banyak data dengan tipe data berbeda-beda (heterogen). Misalnya, satu bagian integer, satu bagian lagi character, dan bagian lainnya Boolean. Biasanya record digunakan untuk menampung data suatu obyek. Misalnya, siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan menggunakan tipe data string, alamat bertipe data string, usia bertipe data single (numeric), tempat lahir bertipe data string, dan tanggal lahir bertipe data date. Berikut ini contoh pengunaan record dalam Delphi.
C.   Image
Image, atau gambar, atau citra, merupakan tipe data grafik. Misalnya grafik perkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan, dan lain-lain. Pada bahasa-bahasa pemrograman modern terutama yang berbasis visual, tipe data ini telah didukung dengan sangat baik.
D.   Date Time
Nilai data untuk tanggal (date) dan waktu (time) secara internal disimpan dalam format yang spesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat digunakan untuk menyimpan, baik tanggal maupun jam. Tipe data ini masuk dalam kelompok tipe data composite, karena merupakan bentukan dari beberapa tipe data.
E.   Object
Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-obyek yang disediakan oleh Visual Basic, Delphi, dan bahasa pemrograman lain yang berbasis GUI. Sebagai contoh, apabila mempunyai form yang memiliki control Command button, yang kita beri nama Command1.
F.    Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan nilai tertentu sesuai dengan yang ditetapkan programmer. Biasanya, tipe data ini mempunyai nilai batas minimum dan nilai batas maksimum. Tipe data ini didukung dengan sangat baik dalam Delphi.
G.   Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus disebut satu persatu, dan bernilai konstanta integer sesuai dengan urutannya. Nilai konstanta integer elemen ini diwakili oleh suatu nama variable yang ditulis di dalam kurung. Tipe data ini juga dijumpai pada Delphi, dan bahasa pemrograman deklaratif seperti SQL.
Pada contoh di atas, tipe data Hari_dlm_Minggu termasuk enumerasi dengan rentang nilai Nol, dimana Senin sampai dengan Minggu dan nilai data dari 0, 1, sampai dengan 7. Sedangkan tipe data Nama_Bulan termasuk enumerasi dengan rentang nilai Nol, Januari sampai dengan Desember dan nilai data dari 0, 1, sampai dengan 12. (Saputra, 2015)

Daftar Pustaka

ADITYA, P. C. (2012, Juli). Pointer. Retrieved Januari 13, 2017, from Struktur Data: http://christ-13.blogspot.co.id/2012/07/pointer.html
BSI, C. ( 2009, November 5). Artikel Pointer. Retrieved Januari 13, 2017, from Artikel Pointer: http://ciciniez.blogspot.co.id/
Cicax-milanisti. (2010, Mei 25). POINTER PADA C++. Retrieved Januari 13, 2017, from TEKOM-C : http://cicax-milanisti.blogspot.co.id/2010/05/pointer-pada-c.html
Kebudayaan, K. P. (2014). Pemograman Dasar.
Saputra, R. (2015, Agustus). Pengertian Tipe Data/ Data Type. Retrieved Januari 13, 2017, from Pengertian dan Jenis-jenis Tipe Data/ Data Type didalam Dunia Pemrograman: http://westborneoblogger.blogspot.com/2015/08/pengertian-dan-jenis-jenis-tipe-data.html



Tidak ada komentar:

Posting Komentar