Preprocessor dalam C++ mempengaruhi proses yang dilakukan compiler pada
kode program dengan menggantikan atau mengisi suatu bagian kode program
sesuai perintah yang diberikan. Preprocessor diawali dengan "#". Ada
beberapa preprocessor dalam C++, yaitu :
Berbeda dengan constanta yang sebenarnya adalah variabel yang dibatasi kegunaannya. #define diguakan untuk memberikan nama pada suatu nilai atau macro. Berbeda dengan const yang menyimpan nilai seperti variabel, #define tidak digunakan untuk menyimpan nilai. #define hanya memberi "nama pengganti" pada angka, string atau macro.
Kalau kalian malas mengetik, coba download source codenya di sini.
- #include : Menyertakan isi file header ("*.h") dalam kode program.
- #define : Menggantikan identifier dalam program dengan makro atau suatu nilai.
- #undef : Menghapus identifier yang sudah dibuat dengan #define.
- #Pragma : Perintah khusus compiler yang bisa berbeda untuk setiap compiler.
- Conditional Preprocessor ( #if, #elseif, #else) : Menentukan bagian program yang akan di-compile berdasarkan suatu persyaratan seperti OS atau compilernya.
Sebelumnya kita pernah menggunakan #include untuk menyertakan header standar. Ada dua cara menggunakan #include.
- Jika #include menggunakan header standar C++ atau header default yang sudah ditentukan lokasinya, nama file diapit dengan "<" dan ">".
- Jika #include digunakan untuk menambahkan header yang berada di dalam folder yang sama dengan kode program C++, nama file diapit diantara dua tanda kutip.
#include <stdio.h>
#include "headerku.h"
int main(void){
printf("Hello, world!\n");
return 0;
}
Untuk meng-compile program tersebut harus ada file "headerku.h" di folder yang sama dengan file kode program di atas.Berbeda dengan constanta yang sebenarnya adalah variabel yang dibatasi kegunaannya. #define diguakan untuk memberikan nama pada suatu nilai atau macro. Berbeda dengan const yang menyimpan nilai seperti variabel, #define tidak digunakan untuk menyimpan nilai. #define hanya memberi "nama pengganti" pada angka, string atau macro.
#include <stdio.h>
#define angka 5
int main(void){
#ifndef angka
printf("angka sudah tidak didefinisikan\n");
#else
printf("%d sudah didefinisikan\n", angka);
#endif
#undef angka
#ifndef angka
printf("angka sudah tidak didefinisikan\n");
#else
printf("%d sudah didefinisikan\n", angka);
#endif
return 0;
}
Dengan #define kita bisa memperjelas penulisan program dan kita bisa mengubah
nilai yang diwakili nama dalam #define dengan mudah. Jika kita sudah tidak membutuhkan #define, kita bisa menggunakan undef untuk menyingkirkannya.Kalau kalian malas mengetik, coba download source codenya di sini.