pointer, file header & makro · terdapat dua macam operator pointer yang disediakan oleh...

13
Pointer, File Header & Makro

Upload: phamkhanh

Post on 27-Apr-2018

251 views

Category:

Documents


4 download

TRANSCRIPT

Pointer, File Header

& Makro

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();

}

Pointer Pada Char

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>

Contoh Lat1

Contoh Lat2

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

File Header