Pengertian Preprosesor dunia ilmu komputer untuk pelajaran sekolah

PREPROSESOR


Berikut ini yang dibahas adalah pengertian, jenis  dan fungsi dari “preprosesor” dalam program C++ yang saya kutip dari buku berjudul visual C++ 2013, dan saya tambah dengan pengetahuan dengan tambahan dari blog di mesin pencari google. Langsung saja ke pada pembahas ini..

Preprosesor adalah sebuah perintah yang akan dikerjakan sebelum compiler(penerjemah bahasa mesin)  menyusun baris-baris lain di dalam program C++. Dalam penggunaan preprosesor  diwakili oleh tanda  #(cress) lalu diikuti dengan nama preprosesornya. Contoh beberapa  Jenis preprosesor yang ada didalam Visual C++ atau C adalah sebagai berikut :

·  #define

 digunakan untuk mendefinisikan sebuah makro pada kode program kita. Makro memiliki arti yang sama dengan fungsi, namun dari segi waktu, makro diproses lebih cepat dan dari cara penulisannya pun juga lebih sederhana dari pada fungsi. Pada umumnya nilai konstanta pada makro yang telah didefinisikan hanya dapat bernilai angka, string atau sebuah ekspresi. Makro yang didefinisikan bukanlah sebuah variabel dan juga tidak dapat diubah oleh kode program seperti halnya merubah sebuah variabel biasa.

·  #elif

 menyediakan suatu tindakan alternatif pada kondisi #if#ifdef, atau #ifndef. Kode program akan disertakan setelah pernyataan #elif ketika kondisi sebelumnya #if#ifdef atau #ifndefbernilai false dan kondisi #elif bernilai true. Kondisi #elif merupakan penyederhanaan dari kondisi #else if.

·  #else

 memberikan tindakan alternatif pada kondisi #if, #ifdef, atau #ifndef. Kode program akan disertakan setelah pernyataan else ketika kondisi #if#ifdef, atau #ifndef bernilai  false.

·  #endif

menentukan akhir dari perintah bersyarat, yang dimulai dengan perintah # if.

·  #error

instruksi #error akan memaksa compiler untuk menghentikan suatu Kompilasi. Pada dasarnya #error ini digunakan pada “debugging”. Berikut ini bentuk yang biasa dipakai.

·  #if

Petunjuk bersyarat yang dimulai dengan perintah #if harus dihentikan secara eksplisit dengan perintah #endif.

·  #ifdef

 digunakan untuk menentukan apakah makro yang tersedia ada sebelum kode berikutnya dimasukan kedalam proses kompilasi.

·  #ifndef

 digunakan untuk menentukan apakah makro yang tersedia tidak ada sebelum kode berikutnya dimasukan ke dalam proses kompilasi.

·  #Include

 digunakan untuk memberitahu preprocessor untuk menyisipkan isi file lain ke kode program kita pada titik tertentu.

·  #line

 digunakan untuk mengubah isi dari _LINE_ dan _FILE_ yang telah ditentukan pada compiler.

·  #undef

  digunakan untuk memberitahu preprocessor untuk menghapus semua makro tertentu yang telah didefinisikan. Sebuah makro dapat didefinisikan ulang setelah makro tersebut dihapus oleh #undef.

·  #pragma

#pragma adalah sebuah instruksi yang telah didefinisikan implementasinya, yang memungkinkan suatu variasi instruksi yang diberikan pada compiler. Fungsi #pragma ini tidak support pada compiler gcc terbaru.





Beberapa preprosesor yang sering digunakan adalah preprosesor “#include”. Preprosesor ini berfungsi untuk mengarahkan ke sebuah file header yang akan anda tuliskan dalam baris kode program anda. Biasanya, file header ini berektensi(format) “ .h” yang berarti header. File-file header ini sebetulnya dapat anda buat sendiri atau telah tertanam dari library C++. 
File-file header inilah yang menyediakan sesuatu untuk memenuhi kebutuhan berbagai kata kunci atau perintah dalam kode program. Contoh header yang sering digunakan adalah header “stdio.h”, sehingga penulisan preprosesor menjadi seperti berikut :
  
  #include<stdio.h> atau #include”iostream”

Header yang juga sering digunakan adalah header “iostream”. Header ini adalah header yang sering digunakan pada penulisan program C++. Header ini mengenali fungsi  seperti “cin” dan “cout” pada aplikasi C++. Berikut ini bentuk dari penulisan header “iostream” :
   
#include<iostream.h> atau #include”iostream”

Preprosesor sering juga disebut preprosesor  directive, biasanya ditulis di awal sebuah program atau aplikasi walaupun sebetulnya  preprosesor dapat ditulis dimana pun asalkan masih dalam satu baris command(perintah) atau file. Hal ini karena compiler(penerjemah bahasa mesin) akan mengeksekusi preprosesor terlebih dahulu baru akan mengerjakan baris kode yang lain. Preprosesor juga sering digunakan sebagai macro karena kemampuan preprosesor yang dieksekusi sebelum baris lain dieksekusi. Salah satu contoh kemampuan preprosesor pada penggunaan preprosesor “define”. Berikut contoh skripnya :

#include<iostream.h>
#define sisi 8
Using namespace std;
Int main()
{
   Int kubus = sisi*sisi;
   cout<<”luas kubus adalah : “<<sisi;
   return 0;
}


Hasil dari potongan program diatas jika dijalankan akan menampilkan nilai sebagai berikut :


Luas kubus adalah : 64




Jika anda perhatikan, dalam potongan kode program diatas dapat anda lihat bahwa program tersebut memiliki dua preprosesor,yaitu  : “#include” dan “#define” yang memiliki fungsi yang berbeda. Seperti yang telah dijelaskan sebelumnya, preprosesor “#include” akan memanggil file header “stdio.h”yang didalamnya terdapat fungsi “cout” sehingga compiler mampu mengeksekusinya. Sedangkan preprosesor “#define” akan mendefenisikan sebuah identifier “sisi” dengan nilai 8.

Comments