Preprosesor
dalam bahasa C
Dalam Bahasa C mencakup
beberapa intruksi preprocessor yang digunakan untuk memberikan perintah pada
compiler. Perintah-perintah preprocessor tersebut adalah:
1.
#define
2.
#elif
3.
#else
4.
#endif
5.
#error
6.
#if
7.
#ifdef
8.
#ifndef
9.
#include
10. #inline
11. #pragma
12. #undef
Masing-masing fungsi
tersebut akan dijelaskan secara singkat dibawah ini. (intruksi yang berhubungan
dengan #elif, #else, #endif, #ifdef, dan #ifndef semuanya dijelaskan dalam #if).
#Define
“#define”
digunakan untuk melaksanakan subtitusi makro dari satu lembar teks satu denga
lembar teks yang lain melalui suatu file dimana teks tersebut digunakan.
Bentuk Umumnya:
#define namecaracter-sequence
Perhatikan, bahwa dalam
perintah ini, tidak ada tanda titik koma. Selanjutnya, bila karakter pertama
berhasil, maka dia akan berhenti hanya
pada akhir baris. Contoh, jika kita ingin memakai “TRUE” untuk angka 1 dan
“FALSE” untuk angka 0, maka kita buat dua #define makro :
#define TRUE 1
#define FALSE 0
Pada contoh tersebut, compiler akan mengganti 1 dan 0 setiap menjumpai TRUE dan FALSE.
Intruksi #define mempunyai feature kuat yang lain: suatu makro mempunyai argument. Makro yang
mempunyai argument akan bekerja sama dengan fungsi. Setiap ditemukan makro,
maka argument akan bergabung dengan makro yang ditempatkan oleh argument actual
tersebut yang berada pada program.
Contoh:
#include “stdio.h”
#define ABS (a) (a) <0
? – (a) : (a)
main (void)
{
Printf(“abs of -1 and 1 : %d %d”, ABS (-1), ABS (1));
Return 0;
}
Ketika rogram tersebut di compile, “a” pada definisi
makro akan diganti dengan angka -1 dan 1, tanda kurung yang ada di “a” sangat
diperlukan untuk meyakinkan subtitusi pada semua hal yang semestinya.
#Error
Intriksi #error akan
memaksa compiler untuk menghentikan suatu kompilasi. Pada pokonya #error ini
digunakan dalam “debugging”.
Bentuk Umumnya:
#error message
Jika dijumpai #error ,
maka akan terlihat suatu pesan dan angka baris.
#if, #elif, #else, #endif, #ifdef,
dan #ifndef
Intruksi-intruksi tersebut
digunakan pada beberapa porsi variasi compile secara selektif. Ide yang umum
adalah bahwa jika suatu ekspresi setelah #if, #ifdef, atau #ifndef adalah
benar, maka kode yang berada diantara salah satu dari mereka dan #endif, akan
tersusun; tapi jika yang terjadi
sebaliknya, maka akan terlompati. #endif
digunakan untuk menandai akhir suatu blok. Intruksi #else dapat digunakan
dengan salah satu dari mereka dengan cara yang sama, yaitu dengan “else” pada
perintah C.
Bentuk Umum pada #if:
#if constant-expression
Jika ekspresi konstanta
tersebut betul, maka blok kode akan tersusun.
Bentuk Umum pada #ifdef:
#ifdef macro-name
Jika nama makro telah
ditentukan dengan #define, maka blok kode berikutnya akan tersusun.
Intruksi #elif digunakan
untuk membuat suatu perinyah “if-else-if”.
Bentuk Umumnya:
#elif constant-expression
#elif dapat digunakan
dengan #if, tai tidak dengan #ifdef dan #ifndef.
#Include
Intruksi #include akan
memerintah compiler membaca dan menyusun file sumber yang lain.
Bentuk Umumnya:
#include “filename”
atau #include <filename>
File sumber yang akan
dibaca harus ditutup antara tanda kurung atau tanda kurung lancip. Jika nama
file ditutup dengan tanda kurung lancip, maka file akan dicari dengan cara yang
telah ditentukan oleh kreasi dari compiler.
Sering kali ini berarti suatu pencurian beberapa
direktori khusus yang didalamnya terdapat file.
Jika nama file ditutup dengan tanda kurung, maka file
akan dicari dengan cara yang telah ditantukan implementasinya. Pada beberapa
implementasi hal ini berarti pencarian direktori yang sedang aktif bekerja.
Jika file tidak ditemukan maka pencarian akan diulang seolah nama file ditutup
dengan tanda kurung lancip. Kita harus melihat buku manual compiler agar
kembali mengetahui detil perbedaan antara tanda kurung dengan tanda kurung
lancip.
#include dapat diletakan pada file-file yang ada lainnya.
Contoh: #include<stdio.h>.
#Line
Intruksi #line
digunakan untuk mengubah isi dari “ __LINE__” dan “__FILE__”, yang telah
ditentukan pada compiler.
Bentuk utamanya: #line number “filename”
Dimana”number” adalah
integer positif, dan “filename” adalah identifier ayng valid. “number” akan menjadi angka baris
sumber dan “filename” akan menjadi nama file sumber. Nama dari file adalah
optional. #line pada pokonya digunakan untuk “debugging” suatu tujuan dan
aplikasi khusus.
#pragma
Instruksi #pragma adalah
suatu instruksi yang telah didefinisikan implementainya, yang memungkinkan
suatu variasi instruksi yang diberikan pada compiler. Contoh suatu compiler
mungkin mempunyai suatu pilihan untuk mendukung pembuatan penggandaan program.
Pilihan penggandaan (trace), kemudian akan ditentukan oleh perintah #pragma.
#undef
Instruksi #undef digunakan
untuk memindah definisi yang telah ditentukan sebelumnya dari nama makro yang
mengikutinya.
Bentuk umumnya:
#undef macro-name
Persamaan
dan Perbadaan C dengan C++
Bahasa C
merupakan hasil pengembangan dari bahasa B yang ditulis oleh Ken Thompson pada
tahu 1970 yang akarnya yaitu dari bahasa BCPL yang dikembangkan oleh Martin
Richard pada tahun 1967. Sedangkan bahasa C sendiri di tulis oleh Brian W.
Kernighan dan Denies M. Ritchie pada tahun 1972. Bahasa C pada awalnya
dioperasikan pada sistem operasi UNIX.
Bahasa C merupakan bahasa pemrograman tingkat menengah yang berada diantara bahasa tingkat rendah dan bahsa tingkat tinggi yang biasa disebut dengan bahasa Assambly. Bahasa C mempunyai banyak kemampuan, diantaranya membuat perangkat lunak seperti dBASE, Word Star, dan lain-lain. Pada tahun 1980, seorang ahli Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang kemudian dinamakan C with Classes karena disini lebih berbasis objek. Dan kemudian pada tahun 1983 berganti nama C++.
Bahasa C merupakan bahasa pemrograman tingkat menengah yang berada diantara bahasa tingkat rendah dan bahsa tingkat tinggi yang biasa disebut dengan bahasa Assambly. Bahasa C mempunyai banyak kemampuan, diantaranya membuat perangkat lunak seperti dBASE, Word Star, dan lain-lain. Pada tahun 1980, seorang ahli Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang kemudian dinamakan C with Classes karena disini lebih berbasis objek. Dan kemudian pada tahun 1983 berganti nama C++.
Pada C++
ini terdapat tambahan object Oriented Programming (OOP) yang tujuan utamanya
adalah membantu dalam membuat dan mengelola program yang besar dan kompleks.C++
merupakan bahasa yang powerfull. Tidak sedikit dari bahasa pemrograman yang
familiar sekarang merupakan pengembangan dari C++ seperti PHP (PHP Hypertext
Preprocessor). Banyak hal yang bisa dilakukan dengan C++ seperti membuat
aplikasi game. C++ lebih banyak digunakan untuk aplikasi server karena
kapasitasnya yang tidak terlalu besar.
Jadi, buat para pembaca yang gila dengan C++ jangan takut karena C++ adalah bahasa pemrograman yang bukan tergolong baru.
Jadi, buat para pembaca yang gila dengan C++ jangan takut karena C++ adalah bahasa pemrograman yang bukan tergolong baru.
Kelebihan
bahasa C++ :
·
Kode
bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk semua jenis
komputer.
·
bahasa
Standard-nya ANSI bisa dipakai diberbagai platform.
·
kecepatan
program jika dibanding dengan program yang sama buatan bahasa lain, relatif
lebih cepat.
·
Bahasa C++
tersedia hampir di semua jenis komputer.
·
Bahasa C++
hanya menyediakan sedikit kata-kata kunci (hanya terdapat 48 kata kunci).
·
Dukungan pustaka fungsi dan kelas yang banyak
sehingga memungkinkan pembuatan aplikasi makro.
·
C++ adalah bahasa yang terstruktur, dengan
demikian akan lebih mendukung OOP.
·
Bahasa C++
termasuk bahasa tingkat menengah dan lebih dekat dengan bahasa mesin.
·
Kode
program bersifat reuseable, sehingga dapat digunakan kembali pada project lain dengan
hanya menggunakan library dan file header.
·
C++ dapat
membuat aplikasi graphic processor berkualitas tinggi.
Kelemahan Bahasa C++
:
·
C++
tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep OOP karena kaidah-kaidah
OOP dapat dilanggar.Dan
di C++ ada konsep pointer yang sangat membingunkan, ini salah satu alasan mengapa C++ menjadi momok yg paling tidak
disukai.
di C++ ada konsep pointer yang sangat membingunkan, ini salah satu alasan mengapa C++ menjadi momok yg paling tidak
disukai.
·
C++
walapun tidak terpengaruh oleh Sistem Operasi tetapi tool untuk developmentnya
harus spesific pada salah satu sistem operasi contoh Visual Studio hanya dapat
berjalan di Windows. Alasan ini juga nantinya akan dapat menurunkan minat
terhadap sistem operasi yang lain contohnya Linux. Apabila dalam praktiknya
menggunakan Visual Studio maka otomatis akan menggunakannya juga dan pada akhirnya
malas untuk mencoba sistem operasi yang lain.
·
Implementasi
C++ dalam teknologi IT pada saat sekarang sudah sangat sedikit sekali.
·
“susah”
untuk membuat sesuatu dengan C++ sehingga kepeminatannya dalam memperdalam
Programming akhirnya harus kandas
kecuali dengan inisitif sendiri mempelajari bahasa/teknologi lain.
kecuali dengan inisitif sendiri mempelajari bahasa/teknologi lain.
Tidak ada komentar:
Posting Komentar