Contoh Macro Processing dan File Inclusion
Sebelum sebuah program di proses oleh compiler, maka akan ada pre-processor yang bertugas untuk melakukan macro processing dan file inclusion. Ketika seorang programmer mendefinisikan sebuah macro pada programnya, maka pre-processor akan menghapus macro tersebut dan menggantikannya secara langsung pada baris program yang ada di fungsi utama. Sebagai contoh pada potongan program di gambar 1.
SATU dan MAX adalah contoh macro yang didefinisikan oleh programmer. SATU memiliki nilai 10, sedangkan MAX akan menerima parameter a dan b dan melakukan perbandingan antara nilai a dan b tersebut. Ketika program ini dijalankan maka macro tersebut akan dihapus dan digantikan langsung kedalam fungsi utama (lihat gambar 2).
Fungsi lain yang juga dilakukan oleh pre-processor adalah file inclusion. Sebagai contoh kita ingin membuat sebuah file baru bernama “macroCollection.c” yang berisi macro dari SATU dan MAX pada penjelasan diatas ditambahkan dengan inisialisasi variable b. Kemudian kita akan meng-include file macroCollection.c tersebut ke dalam file utama kita (ContohPreprocessor.c).
Ketika pre-processor membaca adanya file inclusion, maka pre-processor akan menggantikan inclusion file tersebut dengan isi dari file tersebut. Hasil dari file inclusion dari contoh diatas dapat dilihat pada gambar 5.
Jika Anda mencobanya, dapat menggunakan perintah cpp (c processor) untuk melihat hasil dari yang pre-processor lakukan pada program yang dibuat. Setelah sintaks “cpp” dilanjutkan dengan nama file yang mau dieksekusi, contoh pada kasus ini kita dapat mengeksekusi file diatas dengan $ cpp ContohPreprocessor.c
Selamat mencoba.