Pointer, File Header & Makro · Terdapat dua macam operator pointer yang disediakan oleh Borland...
Transcript of Pointer, File Header & Makro · Terdapat dua macam operator pointer yang disediakan oleh Borland...
Operator Pointer Terdapat dua macam operator pointer yang disediakan oleh Borland C++:
1. Operator dereference ( & )
2. Operator reference ( * )
POINTER Pointer merupakan sebuah variabel yang berisi a
lamat dari variabel lain. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah.
Kegunaan pointer yang utama adalah untuk menyimpan alamat memori dari sebuah variabel (data type atau object dari class), menyimpan alamat dari sebuah fungsi (function pointer) dan dapat berfungsi untuk mengirimkan “Parameter yang berupa variabel” ke dalam fungsi, artinya nilai variabel bisa diubah di dalam fungsi serta dapat membuat variabel dinamis.
Pointer Sumber : http://christ-13.blogspot.co.id/2012/07/pointer.html
Tipe_data merupakan tipe dari data yang ditunjuk, bukan tipe dari pointer- nya.
Contoh :
• Mensubstitusikan address sebuah variabel ke pointer dengan memakai addre
ss operator &
int x;
int *ptr;
ptr = &x;
• Mensubstitusikan address awal sebuah array ke pointer
char t[5]; char *ptr; ptr = t;
• Mensubstitusikan address salah satu elemen array dengan address operator
char t[5] ; char *ptr; ptr = &t[3];
• Mensubstitusikan address awal character string ke pointer char
char *ptr;
ptr = "jakarta"
• Mensubstitusikan NULL pada pointer
NULL ada pointer kosong, menunjukkan suatu status dimana pointer itu belum diinisialisasikan dengan sebuah address tertentu
Pointer Sumber : http://christ-13.blogspot.co.id/2012/07/pointer.html
Operator Pointer :
Ada 2 operator pointer yang dikenal secara luas, yaitu operator & dan
operator *.
• Operator & merupakan operator alamat. Pada saat pendeklarasian
variable, user tidak diharuskan menentukan lokasi sesungguhnya
pada memory, hal ini akan dilakukan secara otomatis oleh kompile
r dan operating sysem pada saat run-time. Jika ingin mengetahui di
mana suatu variable akan disimpan, dapat dilakukan dengan memb
erikan tanda ampersand (&) didepan variable , yang berarti "addre
ss of".
• Operator * merupakan operator reference. Dengan menggunakan
pointer,kita dapat mengakses nilai yang tersimpan secara langsung
dengan memberikan awalan operator asterisk (*) pada identifier po
inter, yang berarti “value pointed by“.
Latihan Pointer Konstanta
tipe_data * const nama_konstanta;
//----------------------------------//
//Pendeklarasian Pointer Konstanta //
//----------------------------------//
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main( )
{
char *const nama = "Borland C++";
clrscr( );
cout<<"Nama Program = "<<nama<<endl;
nama = "Visual C++";
cout<<"Nama Program = "<<nama<<endl;
getch( );
}
Pada program diatas, terdapat kesalahan dan tidak dapat dijalankan, penyebabnya pada pernyataan nama = "Borland C++";. Karena variabel nama, merupakan pointer konstanta, yaitu tidak dapat diubah-ubah. Pesan Kesalahan Yang Tampil adalah: Cannot modify a const object
Pointer pada Variabel //-------------------------------//
//Penggunaan Pointer Dereference //
//-------------------------------//
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main( )
{
int ilham, amir, *raka;
clrscr( );
ilham = 75;
amir = ilham;
raka = &ilham;
cout<<"Nilai ILHAM = "<<ilham<<endl;
cout<<"Nilai AMIR = "<<amir<<endl;
cout<<"Nilai RAKA = "<<raka<<endl;
getch();
}
MaCro Preprocessor Directives adalah instruksi yang diberikan kepada compiler, sesaat sebelum proses kompilasi berlangsung. Didalam penggunaan preprocessor directives selalu dimulai dengan tanda “#”.
Ada beberapa preprocessor directives, diantaranya :
• # define : untuk mendefinisikan suatu nilai tertentu kepada suatu nama konstanta.
Bentuk Umum : #define nama_konstanta teks, dalam pendeklarasian #define nama_konstanta sebaiknya ditulis dengan huruf besar, gunanya untuk membedakan dengan nama_variabel.
• #Include : berfungsi untuk memasukkan atau menyertakan file – file header kedaam program yang dibuat. Dalam penulisan #include ada dua bentuk penulisan :
#include “nama_file_header” atau #include <nama_file_header>
File Header File Header adalah suatu file dengan akhiran .h. file ini sebenarnya berisi
kan deklarasi fungsi dan definisi konstanta. Selain file-file header standa
r yang disediakan oleh Turbo C, kita dapat juga membuat file header sen
diri, dengan cara yang sama seperti membuat file editor. Yang harus dipe
rhatikan pada saat menyimpan file header yang telah dibuat harus diguna
kan akhiran .h