dasar-dasar pemrograman bab ii
Post on 27-Dec-2015
68 Views
Preview:
DESCRIPTION
TRANSCRIPT
Chapter II
Struktur Bahasa C++
Pengenalan Praprocessor
Keyword Dalam Bahasa C++
Keyword-keyword yang banyak
digunakan (stdio.h, iostream.h,
void, int, main, cin, cout, endl,
\n, %d, %g)
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 14 ~
Chapter II A. Struktur Bahasa C++
Bahasa C++ secara umum memiliki struktur program
seperti berikut:
Daftar header file
Deklarasi variabel global dan fungsi-fungsi
tambahan
Kepala fungsi utama/main
Definisi fungsi utama/main
Definisi fungsi-fungsi tambahan (subroutine)
Subroutine dapat dituliskan setelah fungsi main
atau di dalam file pustaka (library). Namun bila
diletakan pada library, maka file library harus
disertakan dengan menggunakan prepocessor
directive #include yang diletakan pada daftar
header file.
#include <iostream.h>
int main ()
{
cout << "Hello World!";
return 0;
}
Hasil :
Hello World!
Menyertakan berkas
header iostream.h Tipe kode keluar program
Awal tubuh fungsi main()
Permyataan untuk
menampilkan string
Pernyataan untuk memberi kode
keluar program
Akhir tubuh fungsi main()
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 15 ~
Sisi kiri merupakan source code, yang dapat
diberi nama hiworld.cpp dan sisi kanan adalah
hasilnya setelah di-kompile dan di-eksekusi.
Program diatas merupakan salah satu program
paling sederhana dalam C++, tetapi dalam program
tersebut mengandung komponen dasar yang selalu
ada pada setiap pemrograman C++. Jika dilihat satu
persatu :
// my first program in C++
Baris ini adalah komentar. semua baris yang
diawali dengan dua garis miring (//) akan dianggap
sebagai komentar dan tidak akan berpengaruh terhadap
program. Dapat digunakan oleh programmer untuk
menyertakan penjelasan singkat atau observasi yang
terkait dengan program tersebut.
#include <iostream.h>
Kalimat yang diawali dengan tanda (#) adalah are
preprocessor directive. Bukan merupakan baris kode
yang dieksekusi, tetapi indikasi untuk kompiler. Dalam
kasus ini kalimat #include <iostream.h>
memberitahukan preprocessor kompiler untuk
menyertakan header file standard iostream. File
spesifik ini juga termasuk library deklarasi standard I/O
pada C++ dan file ini disertakan karena fungsi-
fungsinya akan digunakan nanti dalam program.
int main ()
Baris ini mencocokan pada awal dari deklarasi
fungsi main. fungsi main merupakan titik awal dimana
seluruh program C++ akan mulai dieksekusi. Diletakan
diawal, ditengah atau diakhir program, isi dari fungsi
main akan selalu dieksekusi pertama kali. Pada
dasarnya, seluruh program C++ memiliki fungsi main.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 16 ~
Main diikuti oleh sepasang tanda kurung () karena
merupakan fungsi. pada C++, semua fungsi diikuti oleh
sepasang tanda kurung () dimana, dapat berisi argumen
didalamnya. Isi dari fungsi main selanjutnya akan
mengikuti,berupa deklarasi formal dan dituliskan
diantara kurung kurawal ({}), seperti dalam contoh.
cout << "Hello World";
Intruksi ini merupakan hal yang paling penting dalam
program contoh. cout merupakan standard output stream
dalam C++ (biasanya monitor). cout dideklarasikan dalam
header file iostream.h, sehingga agar dapat digunakan maka
file ini harus disertakan. Perhatikan setiap kalimat diakhiri
dengan tanda semicolon (;). Karakter ini menandakan akhir
dari instruksi dan harus disertakan pada setiap akhir instruksi
pada program C++ manapun.
return 0;
Intruksi return menyebabkan fungsi main() berakhir
dan mengembalikan kode yang mengikuti instruksi tersebut,
dalam kasus ini 0. Ini merupakan cara yang paling sering
digunakan untuk mengakhiri program.
Tidak semua baris pada program ini melakukan aksi.
Ada baris yang hanya berisi komentar (diawali //), baris yang
berisi instruksi untuk preprocessor kompiler (Yang diawali
#),kemudian baris yang merupakan inisialisasi sebuah fungsi
(dalam kasus ini, fungsi main) dan baris yang berisi instruksi
(seperti, cout <<), baris yang terakhir ini disertakan dalam
blok yang dibatasi oleh kurung kurawal ({}) dari fungsi main
B. Pengenalan Praprocessor
Bahasa C++ mencakup beberapa instruksi
preprocessor yang digunakan untuk memberikan suatu
perintah pada compiler. Instruksi-instruksi preprocessor
tersebut adalah :
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 17 ~
#define #else #error #ifdef
#include #pragma #elif #endif
#if #ifndef #inline #undef
Masin-masing fungsi tersebut di atas akan
dijelaskan secara singkat di dalam bab ini. (Instruksi
yang berhubungan dengan #elif, #else, #endif, #ifdef
dan #ifndef semuanya dijelaskan dalam #if)
#define “#define” digunakn untuk melaksanakan subtitusi
makro dari satu lembar teks ke lembar teks yang
lainmelalui suatu file dimana teks tersebut digunakan.
Berikut ini bentuk yang biasa dipakai :
#define name character-sequence
Perhatikan bahwa dalam perintah ini, tidak ada
tanda titik koma. Selanjutnya diawal bila karakter awal
telah berhasil maka dia akan berhenti hanya pada akhir
baris. Contoh, jika 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.
Instruksi #define mempunyai feature kuat yang lain :
suatu makro dapat mempunyai argument. Makro yang
mempunyai argument akan bekerja hampir sama
dengan fungsi. Satiap ditemukan makro, maka
argument akan bergabung dangan makro yang
ditempatkan oleh argument actual tersebut yang berada
pada program.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 18 ~
Contoh :
#include
#define ABS(a) (a)<0 ? – (a) : (a)
main(void)
{
printf("abs of -1 and 1: %d %d", ABS(-1), ABS(1));
return 0;
}
Ketika program tersebut decompile, “a” pada defenisi
makro akan diganti dengan angka -1 dan 1, tanda
kurung yang ada di “a” sangat diperlukan untuk
meyakinkan subtitusi pada semua hal yang semestinya.
Contoh, jika tanda kurung pada “a” dihilangkan
maka ekspresi :
ABS(10-20)
akan dikembalikan pada :
10-20<0 ? -10-20 :10-20
Dan akan mempunyai hasil yang salah.
Penggunaan subtitusi makro pada tempat yang riil,
mempunyai satu keuntungan utama : yaitu akan
mempercepat kode karena tidak ada “overhead” untuk
panggilan fungsi yang didatangkan.
Namun demikian, percepatan tersebut akan membuat
program semakin besar. Hal ini desebabkan karena
adanya duplikat kode.
#error Instruksi #error akan memaksa compiler untuk
menghentikan suatu Kompilasi. Pada dasarnya #error
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 19 ~
ini digunakan pada “debugging”. Berikut ini bentuk
yang biasa dipakai.
#error message
Jika dijumpai #error, maka akan terlihat suatu pesan
dan angka baris.
#if, #ifdef, #ifndef, #else, #elif, #endif Instruksi-instruksi processor tersebut digunakan pada
beberapa porsi variasi compile program secara selektif.
Logika yang umum adalah bahwa jika suatu ekspresi
setelah #if, #if def atau #ifndef adalah benar, maka
kode yang berada diantara salah satu dari meraka dan
#endif, akan tersusun, tapi jika yang terjadi sebaliknya,
maka akan terlewati. #endif digunakan untuk menandai
akhir suatu blok. Instruksi #else dapat digunakan
dengan salah satu dari mereka denga cara yang sama,
yaitu dengan “else” pada perintah C.Beerikut ini bentuk
yang biasa dipakai pada #if :
#ifconstant-ekspresion Jika ekspresi konstanta
tersebut benar, mka blok kode akan tersusun.
Berikut ini bentuk yang biasa dipakai pada #ifdef :
#ifdef macro-name Jika nama makro (macro-name)
telah ditentukan dengan perintah #define, maka blok
kode berikutnya akan tersusun. Contoh berikut ini
adal;ah tentang cara beberapa instruksi preprocessor
yang bekerja dengan code :
#include
#define ted 10
main(void)
{
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 20 ~
#ifdef ted
printf (“Hi Tex\n”);
#endif
printf (“bye-bye\n”);
#of 10<9
printf (“Hi George\n”);
#endif
}
Program tersebut akan mencetak “Hi Ted” dan
“bye-bye” pada layar, tapi bukan “Hi George”.
Instruksi #elif digunakan untuk membuat suatu perintah
“if-else-if”. Berikut ini bentuk yang seering dipakai :
#elifconstant-expression
#elif dapat digunakan dengan #if, tapi tidak dengan
#ifdef atau ifndef.
Kita juga dapat menggunakan #if atau #elif untuk
menentukan jika macro name telah didefinisikan
dengan menggunakan operator “defined”
preprocessing.
Bentuk yang biasa dipakai adalah :
#if defined macro-name statement sequence
#endif Jika nama makro telah didefinisikan, maka
perintah yang benar akan tersusun, jika sebaliknya
maka akan terlompati. Misalnya, program ini akan
menyusun conditional code, karena “DEBUG” telah
didefinisikan oleh program :
#include
#define DEBUG
main()
{
int i=100;
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 21 ~
/*…*/
#if defined DEBUG
printf (“value of i is : %d/n”, i);
#endif
/*…*/
}
Kita juga dapat mendahulukan “defined” dengan
operator ! untuk menjadikan compilasi conditional jika
macro tidak didefinisikan.
#include Instruksi preprocessor #include akan memerintah
compiler untuk membaca dan menyusun file sumber
yang lain.
Bentuk yang biasa dipakai adalah :
#include “filename”
#include
File sumber yang akan dibaca harus ditutup antara dua
tanda petik atau dua tanda kurung lancip. Jika nama file
ditutup dengan tand a kurung lancip, maka file akan
dicari dengan cara yang telah ditentukan oleh kreasi
dari compiler.
Sering kali hal ini berarti suatu pencarian beberapa
directory khusus yang didalamnya terdapat file.
Jika nama file ditutup dengan tanda kurung, maka file
akan dicari dengan cara lain yang telah ditentukan
implementasinya. Pada beberapa implementasi hal ini
berarti pencarian directory yang sedang aktif. Jika file
tidak ditemukan mala pencarian akan diulang seolah
nama file ditutp dengan tanda kurung lancip.
#include dapat diletakkan pada file-file yang ada
lainnya. Contoh :
#include “stdio.h”Akan memerintah compiler C
untuk membaca dan menyusun header untuk file disk
library rutin.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 22 ~
#line Instruksi #line , diguanakn untuk mengubah isi dari
“_LINE_” dan “_FILE_”, yang telah ditentukan pada
compiler. Berikut ini bentuk utama dari command
tersebut.
#line number “filename” Dimana number adalah suatu
integer positif, dan “filename” adalah file identifier
yang valid. number akan menjadi angka baris sumber
dan “filename” akan menjadi nama file sumber. Nama
dari file dalah optional. #line pada dasarnya digunakan
untuk debugging suatu tujuan dan aplikassi khusus.
Identifier “_LINE_” adalah suatu integer, dan
“_FILE_” adalah suatu string yang diakhiri nol. Contoh
berikut akan menset counter baris pada IO dan file pada
“test”.
#line IO “test”
#pragma Instruksi #pragma adalah suatu instruksi yang telah
didefiniskan implementasinya, yang memungkinkan
suatu variasi instruksi yang diberikan pada compiler.
Contoh suatu compiler mungkin mempunyai suatu
pilihan 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. Berikut ini bentuk yang biasa
dipakai.
#undef macro-name
Contoh pada program berikut ini :
#define LEN 100
#define WIDTH 100
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 23 ~
char array [LEN] [WIDTH];
#under LEN
#under WIDTH
/* at this point both LEN and WIDTH are
undefined*/
“LEN” dan “WIDTH” ditentukan hingga dijumpai
perintah #undef. Prinsip penggunaan #undef adalah
untuk memungkinkan nama makro ditempatkan hanya
pada bagian-bagian code yang memerlukannya.
Operator Processor # dan ##
ANSI C menyediakan dua operator processor, yaitu
: # dan ##. Operator ini digunakan pada makro #define.
Operator # akan menyebabkan argument yang
didahului untuk dikembalikan pada string kutipan.
Contoh , perhatikan program berikut ;
#include “stdio.h”
#define mkstr(s) #s
main(void)
{
printf(mkstr(I like C++));
return 0;
}
Processor C akan mengembalikan baris :
printf(mkstr(I like C++));
pada
printf(“I like C++”);
Operator ## digunakan untuk menghubungkan dua
tanda secara bersama-sama.
Contoh, perhatikan program berikut :
#include “stdio.h”
#define concat(a, b) a ##b
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 24 ~
main(void)
{
int xy=10;
printf(“%d”, concat(x, y));
return 0;
}
Processor akan berubah bentuk dari
printf(“%d”, concat(x, y));
menjadi
printf(“%d”, xy);
jika operator ini terasa aneh bagi kita, ingatlah
bahwa operator-operator tersebut jarang digunakan
pada hampir semua program C. Operator-operator
tersebut hanya terdapat pada program dengan fungsi
untuk memungkinkan hal-hal tertentu yang ditangani
oleh processor.
Nama-nama Predefined Makro Standar ANSI C
membedakan lima nama-nama makro built-in yang
didefinisikan sebelumnya.
Yaitu :
_LINE_
_FILE_
_DATE_
_TIME_
_STDC_
Jika compiler kita non standar, maka sebagian atau
seluruhnya akan hilang. Compiler juga menyediakan
banyak makro yang didefinisikan sebelumnya untuk
kita gunakan.
Makro _DATE_ adalah suatu string dengan bentuk,
bulan/hari/tahun yang merupakan tanggal translasi file
sumber dalam obyek code.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 25 ~
Waktu transaksi code sumber ke dalam code obyek,
terdiri atas string pada _TIME_, bentuk string tersebut
adalah hour,minute,second (jam,menit,detik).
Makro _STDC_ berisi konstanta desilmal 1, artinya
bahwa implementasi penyesuaian standar. Jika
konstanta tersebut selain angka 1, maka
implementasinya tentu akan berbeda dari standar.
C. Keyword Dalam Bahasa C++
Dalam bahasa C ++ terdapat 32 kata kunci
(keywords) yang telah terdefinisikan:
Auto Double int struct
Break Else long switch
Case Enum register typedef
Char Extern return union
Const Float short unsigned
Continue For signed void
Default Goto sizeof volatile
Do If static while
1. Auto : Keyword "auto" digunakan untuk membuat
variabel lokal. Namun demikian keyword ini jarang
dipakai.
2. Break : Keyword "break" digunakan untuk keluar dari
do, for atau loop while dengan melewati kondisi loop
yang normal.. Keyword ini juga digunakan untuk keluar
dari perintah "switch".
3. Switch : Perintah "switch" adalah bagian dari beberapa
perintah yang ada pada C. Perintah ini igunakan untuk
pembuatan rute satu dengan beberapa cara yang berbeda.
Berikut ini dalah bentuk yang biasa dibentuk dipakai
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 26 ~
pada perintah "switch".Tiap keberhasilan erintah dapat
berasal dari satu perintah sampai beberapa perintah,
panjang porsi default" dapat dipakai. "switch" akan
bekerja dengan pengontrolan"control-var" terhadap
konstanta. Jika telah diketemukan suatu keserasian, maka
pelaksanaan perintah tersebut akan berhasil. Jika urutan
perintah yang berhubungan dengan "case" yang sesuai
dengan nilai dari "control-var" yang tidak berisi "break",
maka suatu eksekusi perintah akan berlanjut pada "case"
berikutnya. Letakkan secara berbeda, mulai dari tempat
yang sesuai, maka eksekusi akan terus berjalan sampai
perintah "break" ditemukan, atau "switch" berakhir. Jika
tidak ditemukan keserasian "case default" maka perintah
tidak akan berhasil dilaksanakan. Hal ini akan
menyebabkan tidak ada aksi yang berlangsung.
4. Case : Lihat pada "switch".
5. Char : Keyword "char" adalah tipe data yang digunakan
untuk membuat karakter variasi
6. Const : Coonst berasal dari kata “constant” Modifier
"const" akan mengatakan pada compiler ahwa variabel
yang mengikuti tidak dapat dimodifikasi. Namun
demikian saat ideklarasikan variabe "const" dapat diberi
nilai awal
7. Continue : Keyword "continue" digunakan untuk
menyediakan porsi code pada suatu loop dan memaksa
"conditional test" untuk ditampilkan.
8. Default : keyword "default" digunakan pada perintah
"switch" yang memberi tanda default block ari code yang
akan dibuat jika tidak ada kecocokan pada "switch".
9. Do : Loop "do" adalah salah satu dari tiga konstruksi
loop yang ada pada C.Jika hanya satu perintah yang
diulang, maka tanda kurung tidak diperlukan. Tanda
kurung disini hanya memperjelas suatu perintah. Loop
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 27 ~
"do" adalah satu-satunya loop dalam C yang selalu
minimal satu iterasi, sebab suatu kondisi akan diuji pada
bagian bawah loop. Loop "do", biasanya dipakai untuk
membaca file disk
10. Double : "double" adalah suatu penentu tipe data yang
digunakan untuk membuat "double- precision" variabel
"floating-point".
11. If : Adalah suatu fungsi yang mendeklarasikan sebuah
persyaratan. Jika persyaratan itu tidak terpenuhi maka
perintah tidak akan dijalankan atau menjalankan perintah
“else”
12. Else : Adalah suatu fungsi yang digunakan sebagai
alternatif dalam fungsi “if”
13. Enum : Secifier tipe "enum" digunakan untuk membuat
tipe enumerasi (enumera-tion). Enumerasi adalah suatu
daftar yang sederhana dari konstanta integer yang diberi
nama. Oleh sebab itu, tipe enumerasi ini menentukan apa
yang dibandingkan dalam daftar tersebut.
14. Extern : "extern" adalah tipe data modifier yang
digunakan untuk memberitahu compiler bahwa suatu
variabel telah dibuat di lain tempat di dalam program.
Tipe ini sering digunakan pada kata penghubung dengan
susunan file terpisah yang memperlakukan data global
yang sama serta digabungkan bersama. Pada dasarnya,
"extern" ini memberitahu compiler tentang tipe variabel
tanpa harus membuat variabel itu sendiri.
15. Float : “float" adalah tipe data specifier yang digunakan
untuk membuat variabel floating-point.
16. For : Loop "for" memungkinkan pemberian huruf awal
dan kenaikan secara otomatis dari variabel counter.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 28 ~
17. Goto : Keyword "goto" akan menyebabkan pembuatan
program "melompat" pada label yang ditentukan dengan
perintah "goto"
18. Int : "int" adalah tipe specifier yang digunakan untuk
membuat variabel integer.
19. Long : "long" adalah tipe data modifier yang digunakan
untuk membuat variabel integer menjadi "double-length".
20. Register : "register" adalah modifier tempat
penyimpanan yang digunakan untuk meminta agar suatu
pemasukan pada variabel dioptimalkan kecepatannya.
Secara tradisional, "register" hanya dapat digunakan pada
variabel integer dan karakter, "register" tersebut
menyebabkan variabel-variabel tersebut disimpan dalam
register CPU sebagai pengganti dari ditempatkannya pada
memori. Standar ANSIC telah diperluas definisinya agar
dapat memasukkan semua tipe data. Namun demikian
data selain integer dan karakter, biasanya tak dapat
disimpan dalam CPU register. Untuk tipe data yang lain,
baik berupa cache memory (atau semacam jenis peng-
optimal-an scheme) akan dipakai yang kemudian
meminta "register" untuk disimpan."register"hanya dapat
digunakan pada variabel lokal.
21. Return : Perintah "return" akan memaksa suatu
pengembalian dari fungsi dan dapat digunakan untuk
mentransfer kembali suatu angka pada rutin pemanggilan.
22. Short : "short" adalah modifier tipe data yang digunakan
untuk mendeklarasikan integer pendek.
23. Signed : Tipe modifier "signed" digunakan untuk
menentukan suatu tipe data "signec char".
24. Sizeof : Operator pengaturan waktu "sizeof' akan
mengembalikan panjang variabeL tipe yang
mendahuluinya. Jika yang mendahului adalah suatu
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 29 ~
variabel maka tanda kurung bersifat optional (boleh
dipakai)
25. Static : Type data modifier "static" digunakan untuk
menyuruh compiler agar membuat tempat penyimpanan
yang permanen untuk variabel lokal yang mendahuluinya.
Hal ini memungkinkan suatu variabel yang telah
ditentukan mempertahankan nilainya antara panggilan
fungsi.
26. Struct : Keyword "struct" digunakan untuk membuat
variabel komplek atau konglomerat, yang disebut
"structure", yang terbuat dari satu elemen atau lebih
27. Typedef : keyword typedef berguna untuk membuat alias
dari suatu tipe data
28. Union : Union digunakan untuk menunjukkan dua
variabel atau lebih pada lokasi memori yang sama.
29. Unsigned : "unsigned" adalah tipe data modifier yang
memerintahkan compiler untul< menghapus tanda bit dari
suatu integer dan menggunakan seluruh bit untuk
keperluar arithmetic. Hal semacam ini menyebabkan
ukuran integer terbesar menjadi dobel tapi hanya terbatas
pada angka-angka positif saja.
30. Void : Tipe specifier "void" pada pokoknya digunakan
untuk secara jelas mendeklarasikan fungsi yang tidak
mengembalikan suatu nilai (dalam arti penuh), tipe ini
juga digunakan untuk membuat pointer "void" (pointer
pada "void"), yaitu pointer generic yang dapat
menunjukkan beberapa tipe object.
31. Volatile : Modifier "volatile" digunakan untuk
memberitahu Compiler bahwa suatu variabel mungkin
telah mempunyai suatu isi yang telah dipilih dengan cara
yang tidak ditentukan oleh suatu program. Contoh,
variabel-variabel yang diubah dengan hardware seperti
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 30 ~
"realtime clock", 'Interrupt" atau input-input yang lain,
harus dinyatakan sebagai volatile.
32. While : Adalah suatu loop. Jika suatu perintah tunggal
adalah object dari "while",maka tanda kurung dapat
dihilangkan, "while" akan menguji kondisinya pada
bagian atas suatu loop. Oleh sebab itu jika kondisinya
salah untuk memulai,maka loop tidak akan berjalan,
meskipun hanya sekali. Kondisi tersebut mungkin dapat
berupa suatu ekspresi.
D. Keyword-keyword yang banyak digunakan
(stdio.h, iostream.h, void, int, main, cin,
cout, endl, \n, %d, %g)
Preprocessor directive Preprocessor directives adalah perintah-perintah
khusus yang ditujukan ke preprocessor. Semua
preprocessor directives dimulai dengan tanda #. Karena
preprocessor adalah perintah untuk preprocessornya
C++ maka preprocessor directives tidak diakhiri
dengan titik koma (;).
Preprocessor directives ini akan mengubah program
pada saat dikompile saja, jadi perubahannya hanya
bersifat sementara sementara. Setelah selesai maka
program akan kembali seperti semula.
Preprocessor directive disebut juga pengarah
compiler karena fungsinya untuk mengatur proses
kompilasi.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 31 ~
#include merupakan satu jenis pengarah
preprocessor yang digunakan untuk membaca file
yang dinamakan file judul (header file). iostream,
conio.h, stdio.h, windows.h, math.h, dan string.h
merupakan file header yang merupakan standard
library dari C++. Setiap file header berhubungan
dengan perintah masukan (input), perintah
keluaran (output), dan fungsi-fungsi yang
digunakan dalam suatu program.
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 32 ~
Penjelasan
#Include : Include adalah salah satu pengarah
prepocessor directive yang tersedia pada C++.
Preprocessor selalu dijalankan terlebih dahulu
pada saat proses kompilasi terjadi. Bentuk
umumnya :
# include <nama file>
Iostream : iostream adalah salah satu header file
yang ada di C++. Header ini digunakan untuk fungsi
input dan output yang ada di C++.
Conio.h : conio.h adalah untuk "Input Console /
Output" Hal ini sering digunakan untuk membuat teks
antarmuka pengguna berbasis. Ini memiliki banyak
fungsi seperti getch () yang menunggu kunci untuk
ditekan.
Windows.h : Untuk merubah warna tulisan output
pada layar console tersebut kita cukup menambahkan
atau memanggil fungsi #include <windows.h>. Fungsi
ini merupakan standard library buat tipe data
HANDLE, fungsi GetStdHandle dan prosedur
SetConsoleTextAtrribute.
Math.h : Sebagian besar fungsi matematika
ditempatkan di math.h header ( cmath header di C +
+). Fungsi yang beroperasi pada bilangan bulat, seperti
abs , labs , div , dan ldiv , malah ditentukan dalam
stdlib.h header ( cstdlib header di C + +). Setiap fungsi
Dasar – Dasar Pemrograman By. Kelompok 1 PTIK 02 2012
~ 33 ~
yang beroperasi pada sudut menggunakan radian
sebagai unit sudut.
Dalam C89 , semua fungsi hanya menerima tipe
double untuk floating-point argumen. Dalam C99,
keterbatasan ini adalah tetap dengan memperkenalkan
set baru fungsi dengan f dan l sufiks yang bekerja pada
float dan long double argumen masing-masing.
abs , labs , llabs - menghitung nilai absolut dari
nilai integral
fabs - menghitung nilai absolut dari nilai floating
point
div , ldiv , lldiv - menghitung hasil bagi dan sisa
pembagian integer
fmod - sisa dari operasi pembagian floating point
remainder - sisa menandatangani operasi
pembagian
remquo - sisanya ditandatangani serta tiga bit
terakhir dari operasi pembagian
fma - menyatu kalikan-menambahkan operasi
fmax - lebih besar dari dua nilai floating point
fmin - lebih kecil dari dua nilai floating point
fdim - perbedaan positif dari dua nilai floating
point
nan , nanf , nanl - mengembalikan tidak-nomor-
(NaN)
top related