penjelasan preprocessor ini tulisan pertama sebagai mahasiswa tingkat dasar Teknik Informatika... mohon maaf jika masih ada kesalahan dan mohon banyak masukan yang mendukung.. ;-)
1. Preprocessor/ praprosesor/ pemrosesan awal (sebelum proses utama)
pustaka
Preperocessor merupakan proeotipe serta definisi berkas yang berimbas pada program
(Pemrogrman Berorientasi Objek; Adi Nugroho ST. MMSI)
Preprocessor pada c merupakan program yang terpisah dari compiler namun berpean pada
translatian (pengartian) pertama (Wikipedia; keyword “c preprocessor”)
Preprocessor membaca simbol-simbol khusus di dalam kode yang disebut pengarah preprocessor
, yang dimasukkan di dalam program compiler untuk pengompilasian program
(htttp://ihsancreation.wordpress.com/category/kuliah/pemrograma-lanjut)
Sebuah progam c apabila dikompilasi untuk dijadikan executable file, maka instruksi pertama
yang akan dijalankan adalah preprocessor atau pemrosesan awal
(http://bobbyfiles.wordpress.com/2008/01/12/pemrograman-c-3-2)
Pembahasan
dari data referensi berupa pustaka buku dan elektronik. Preprocessor merupakan suatu program
yang berperan penting dalam mengontrol pengompilasian program. Peran preprocessor dalam
pembuatan program executable, yaitu pada saat sebelum kompilasi dilaksanakan, pada tahap pertama
penterjemahan high-level-language ke bahasa mesin. Berkas yang dihasilkan oleh preprocessor
dinamakan translation unit.
Pada compiler c++ langkah pengerjaan preprocessor akan dilakukan dengan sendirinya, maka
dalam penggunaannya programmer tidak perlu menjalankan proses preprocessor terlebih dahulu.
Berikut adalah skema langkah kerja C++ compier dan posisi langkah preprocessor dalam
pembuatan program executable :
2. Cara kerja preprocessor adalah dengan membaca perintah preprocessor directive (pengarah
praprosesor) yang dituliskan dalam pembuatan program dengan selalu diawali tanda # (pound).
Ada 3 macam preprocessor, yaitu:
-Include file: preprocessor ini berfungsi untuk mengikut sertakan pustaka kode berupa file
header pada program yang akan kita tulis. Dengan preprocessor ini kita dapat memasukkan
kode perintah yang terdapat pada file header yang kita sertakan.
Preprocessor ini dijalankan dengan menyertakan preprocessor directive #include dalam kode
program yang sedang kita buat.
Format penulisan directive #include:
#include <nama_file_header.h>
#include “nama_file_header” //tanda kutip digunakan untuk mamasukkan alternatif path
//dari file yang mau disertakan
-Definisi makro : preprocessor ini berfungsi untuk meringkas serta menentukan definisi dari
identifier tertentu yang ditulis dalam kode program C++, dapat juga digunakan untuk
menentukan rumus dari suatu makro fungsi.
Preprocessor ini dijalankan dengan menyertakan preprocessor directive #define, #undef
dalam kode program yang sedang kita buat.
Format penulisan directive #define:
#define nama_makro nilai_makro
-Pengarah kondisional kompilasi: Preprocessor ini berfungsi untuk mengarahkan kerja program
yang kita buat dengan beberapa pengarah preprocessor untuk memberikan dan mengatur
solusi yang dapat dijalankan oleh program.
Preprocessor ini dijalankan dengan menyertakan preprocessor directive #if, #else, #elif,
#ifdef, #ifndef dalam kode program yang sedang kita buat.
Contoh-contoh penggunaan preprocessor directive:
-penggunaan directive #include:
#include <iostream.h>
#include “C:turboCheadercontoh.h” //untuk memberikan alternatif path dari berkas file
//header contoh.
void main(){
float meter;
double milimeter;
cout<<“Masukkan panjang dalam satuan meter =”; //fungsi cin dan cout berada dalam file
cin>>meter; //header iostream yang diikutsertakan
milimeter=meter*1000; //dalam penulisan program ini.
cout<<”Dalam milimeter =”<<milimeter<<endl;
}
-penggunaan directive #define:
#include <iostream.h>
#define persen_bunga 0.02 //menentukan definisi dari makro bunga adalah 0.02 atau 2%
void main(){
int tahun_pinjam;
int selisih_tahun;
float dana_pinjam;
float bunga;
cout<<”masukkan tahun peminjaman =”;
cin>>tahun_pinjam;
3. selisih_tahun=2010-tahun_pinjam;
cout<<”masukkan jumlah dana yang sudah dipinjam =”;
cin>>dana_pinjam;
bunga=dana_pinjam*selisih_tahun*persen_bunga;
cout<<”dana pinjaman anda saat ini berbunga sabasar =”<<bunga<<endl;
}
-penggunaan kondisional kompilasi..
#include <iostream.h>
void main(){
int nilai;
cout<<”masukkan nilai =”;
cin>>nilai
#if nilai>70
cout<<”nilai anda =”<<nilai<<”,selamat anda dinyatakan lulus”<<endl;
#elif nilai<30
cout<<”nilai anda =”<<nilai<<”,anda dikeluarkan dari sekolah”<<endl;
#else
cout<<”nilai anda =”<<nilai<<”,anda harus mengulang tahun depan”<<endl;
}
By. Evan K Halim
pustaka yang dipakai:
1. Adi Nugroho, Pemrograman Berorientasi Objek,Informatika Bandung, 2004
2. Budi Raharjo, Pemrograman C++, Informatika Bandung, 2006
3. htttp://ihsancreation.wordpress.com/category/kuliah/pemrograma-lanjut
4. http://bobbyfiles.wordpress.com/2008/01/12/pemrograman-c-3-2
5. Wikipedia search, keyword “c preprocessor”