Kamis, 01 Oktober 2009

SejaRah C++

Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T Laboratories

mengembangkan bahasa B menjadi bahasa C. Bahasa B yang diciptakan oleh Ken Thompson

sebenarnya merupakan pengembangan dari bahasa BCPL ( Basic Combined Programming

Language ) yang diciptakan oleh Martin Richard.

Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang sebelumnya

menggunakan bahasa B dan BCPL. Dalam perkembangannya, bahasa C menjadi bahasa paling

populer diantara bahasa lainnya, seperti PASCAL, BASIC, FORTRAN.

Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya

standar bahasa C oleh American National Standards Institute (ANSI). Bahasa C yang

diciptakan Kerninghan & Ritchie kemudian dikenal dengan nama ANSI C.

Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories mulai

mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil

pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa C++ mengalami dua tahap

evolusi. C++ yang pertama, dirilis oleh AT&T Laboratories, dinamakan cfront. C++ versi kuno

ini hanya berupa kompiler yang menterjemahkan C++ menjadi bahasa C.

Pada evolusi selanjutnya, Borland International Inc. mengembangkan kompiler C++ menjadi

sebuah kompiler yang mampu mengubah C++ langsung menjadi bahasa mesin (assembly). Sejak

evolusi ini, mulai tahun 1990 C++ menjadi bahasa berorientasi obyek yang digunakan oleh

sebagian besar pemrogram professional.

Struktur Bahasa C++

Contoh 1 : Hasil :

// my first program in C++ Hello World!

#include

int main ()

{

cout << "Hello World!";

return 0;

}

Sisi kiri merupakan source code, yang dapat diberi nama hiworld.cpp dan sisi kanan adalah

hasilnya setelah di-kompile dan di-eksekusi.

SBP/C++/Ayuliana/Feb2004 2

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

Kalimat yang diawali dengan tanda (#) adalah are preprocessor directive. Bukan

merupakan baris kode yang dieksekusi, tetapi indikasi untuk kompiler. Dalam kasus ini

kalimat #include 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.

Prioritas pada operator

Contoh :

a = 5 + 7 % 2

Jawaban dari contoh diatas adalah 6. Dibawah ini adalah prioritas operator dari tinggi ke

rendah :

Priority Operator Description Associativity

1 :: scope Left

2 () [ ] -> .

sizeof Left

++ -- increment/decrement

~ Complement to one (bitwise)

! unary NOT

& * Reference and Dereference

(pointers)

(type) Type casting

3

+ - Unary less sign

Right

4 * / % arithmetical operations Left

5 + - arithmetical operations Left

6 << >> bit shifting (bitwise) Left

7 < <= > >= Relational operators Left

8 == != Relational operators Left

9 & ^ | Bitwise operators Left

10 && || Logic operators Left

11 ?: Conditional Right

12 = += -= *= /= %=

>>= <<= &= ^= |= Assignation Right

13 , Comma, Separat