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
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