SEJARAH PERKEMBANGAN BAHASA C++
SEJARAH BAHASA 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++. Symbol ++ merupakan operator C untuk operasi penaikan, muncul untuk menunjukkan bahwa bahasa baru ini merupakan versi yang lebih canggih dari 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.
Borland International merilis compiler Borland C++ dan Turbo C++.
Kedua compiler ini sama-sama dapat digunakan untuk mengkompilasi kode
C++. Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan
DOS, juga dapat digunakan untuk pemrograman Windows.
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.
Selain Borland International, terdapat beberapa perusahaan lain yang juga merilis
compiler C++, seperti Topspeed C++ dan Zortech C++.
PENGERTIAN BAHASA C++
Berbicara mengenai C++ biasanya tidak lepas dari C, sebagai bahasa pendahulunya. Pencipta C adalah Brian W. Kerninghan dan Dennis M. Ritchie pada sekitar tahun 1972, dan sekitar satu dekade setelahnya diciptakanlah C++, oleh Bjarne Stroustrup dari Laboratorium Bell, AT&T, pada tahun 1983. C++ cukup kompatibel dengan bahasa pendahulunya C. Pada mulanya C++ disebut “ a better C “. Nama C++ sendiri diberikan oleh Rick Mascitti pada tahun 1983, yang berasal dari operator increment pada bahasa C. Keistimewaan yang sangat berari dari C++ ini adalah karena bahasa ini mendukung Pemrograman Berorientasi Objek ( OOP / Object Oriented Programming).
Program C++ dapat ditulis dengan menggunakan berbagai editor teks, seperti EDIT (milik DOS), WordStar, SideKick, ataupun menggunakan editor bawaan dari kompiler. Program C++ biasa ditulis dengan nama ektensi .CPP (dari kata C Plus Plus). Agar program bisa dijalankan (dieksekusi), program harus dikompilasi terlebih dahulu dengan menggunakan kompiler C++.
Borland C++ dan Turbo C++ adalah contoh media editor sekaligus sebagai Compiler.
Memasukkan data dan menampilkan data/informasi merupakan tindakan yang sering dilakukan dalam pemrograman. Penampilan data/informasi biasanya ditujukan ke piranti layar (monitor), sedangkan pemasukan data biasanya dilakukan melalui keyboard.
PENGENALAN IDE C++
IDE singkatan dari Integrated Development Environment yang merupakan Lembar Kerja Terpadu untuk pengembangan program. Adapun kegunaan IDE borland tersebut adalah:
1. Menulis Naskah Program
2. Mengkompilasi Program(Compile)
3. Melakukan Pengujian Program(Debugging)
4. Mengaitkan Object dan Library ke Program(Linking)
5. Menjalankan Program(Running)
IDE pada Borland C++, terbagi menjadi 5 (lima) bagian, yaitu:
a. Baris Menu ( Menu Bar )
Menu utama terdiri dari; File, Edit, Search, Run, Compile, Debug, Project,
Options, Window dan Help.
b. Baris Peralatan (Tools Bar)
Baris yang menampilkan shortcuts (icons) untuk mempermudah pengguna dalam pembuatan program-program C++, seperti icon open, save, compiler, run dan lain-lain.
c. Jendela Editor
Tempat untuk pengetikan program dan membuat program. Jika pertama kali anda membuat program, nama file jendela editor adalah NONAME00.CPP
d. Jendela Message
Tempat untuk menampilkan pesan-pesan pada proses kompilasi dan link program. Jika ada kesalahan sintax program maupun varibel dan objek, maka akan diberikan pesan kesalahannya yang kemudian dapat didouble klik pada pesan tersebut untuk mendapatkan petunjuk di baris yang mana terdapat kesalahannya.
e. Baris Status (Status Bar)
Baris yang akan menampilkan keterangan-keterangan pada saat mengaktifkan menu bar dan sub menu serta keterangan-keterangan lain (seperti petunjuk baris dan kolom, waktu yang sedang berjalan).
Struktur Program C++
Struktur program C++, sama seperti struktur program C yang terdahulu. Struktur program C++ terdiri sejumlah blok fungsi, setiap fungsi terdiri dari satu atau beberapa pernyataan yang melaksanakan tugas tertentu.
Bentuk Umum :
STRUKTUR DAN PROGRAM C++
Struktur atau Bagian-Bagian Program C++. C++ sendiri merupakan bahasa pemrograman yang diciptakan pada tahun 1980, ketika Bjarne Stroustrup melakukan pekerjaan untuk memperoleh gelar Ph.D. dalam pembuatan contoh program pada artikel ini kita akan menggunakan IDE Dev-C++. Baiklah langsung saja kita bahas materi Struktur atau Bagian-Bagian Program C++.
Struktur program C++ sama seperti struktur program C yang merupakan pendahulunya. C++ hanya memiliki beberapa perbedaan dan pembaharuan, Struktur program C++ terdiri sejumlah blok fungsi, setiap fungsi terdiri dari satu atau beberapa statements (pernyataan) yang akan melaksanakan tugas tertentu.
Struktur Program C++
#include <file-header>
using namespace std;
main() {
isi program / statements / pernyataan / komentar;
}
Contoh Program C++
#include <iostream>
using namespace std;
int main () {
// Menampilkan tulisan Hello World ke Layar
cout<<"Hello World";
return 0;
}
Contoh program diatas merupakan program untuk menampilkan tulisan "Hello World" ke layar, penjelasan lebih detail mengenai program diatas (dijelaskan perbaris kode) dapat sobat lihat di artikel Membuat Hello World di C++ dengan Dev-C++ (Lengkap Penjelasan)
Secara Teknis program C maupun C++ selalu tersusun dari 4 bagian utama, yaitu :
- Bagian pengarah compiler atau biasa disebut File Header, yang ditandai dengan simbol #
- Bagian deklarasi
- Bagian definisi
- Bagian komentar yang ditandai dengan symbol // atau pasangan /* … */
Bagian-bagian utama Program C++
1. Bagian pengarah compiler atau File Header
#include <iostream> //File Header
using namespace std; //File Header
int main () {
// Menampilkan tulisan Hello World ke Layar
cout<<"Hello World";
return 0;
}
File Header adalah file yang berisi deklarasi, baik berupa konstanta, fungsi, kelas, namespace, dan sebagainya. Ingat hanya berisi deklarasi. Apabila berupa fungsi, yang tertulis dalam file header hanya prototipenya saja. File ini tidak berisi implementasi atau kode-kode program dari fungsi atau kelas yang didefinisikan di dalamnya.
Baca Juga : Pengertian Compiler (Kompilator)
File Header juga merupakan statement praprosesor, disebut juga pengarah compiler karena berfungsi mengatur proses kompilasi. contohnya "iostream" merupakan file program yang mengandung deklarasi kelas-kelas yang diperlukan misal oleh objek "cout".
C++ menyediakan banyak file header untuk berbagai macam keperluan. perlu diketahui bahwa sebagian besar file header dalam C++ standar sudah tidak memiliki ekstensi ".h" , misalnya <iostream> , <string> , <cstring> dan sebagainya. dalam C++ klasik / tradisional, ekstensi ".h" wajib disertakan, misalnya <iostream.h> , <string.h> , <cstring.h> dan sebagainya.
Untuk lebih memahami kegunaan dari file header, perhatikan kembali contoh program diatas, dalam kode tersebut kita menggunakan perintah "cout", padahal kita tidak pernah mendefinisikan perintah tersebut. Pertanyaannya adalah, bagaimana compiler bisa mengenali perintah "cout" ? Jawabannya adalah karena "cout" telah dideklarasikan didalam file header "iostream". Pada saat kita menulis baris #include <iostream>, kita mengatakan kepada compiler bahwa kita akan menggunakan semua bentuk deklarasi yang ada di dalam file header "iostream".
2 & 3. Bagian Deklarasi dan Bagian Definisi
Semua program C pada dasarnya tersusun dari rangkaian pemanggilan fungsi yang bekerja atas sekelompok data. Selain pemanggilan fungsi, program C mengandung komponen lain yang disebut statement. Statement C ada dua, yaitu:
- statement yang tidak dapat dieksekusi / non executable (bila dikompilasi tidak menghasilkan kode objek dan biasanya digunakan untuk mengatur alur program).
- statement yang dapat dieksekusi / executable (bila dikompilasi akan menghasilkan kode objek). Setiap pemanggilan fungsi maupun statement executable dalam C harus diakhiri dengan tanda titik koma ( ; ).
#include <iostream> //File Header
using namespace std; //File Header
int main () { //Deklarasi
int contohvariabel = 1; //Deklarasi
// Menampilkan tulisan Hello World ke Layar
cout<<"Hello World"; //Definisi
return 0; //Definisi
}
Dalam contoh program C++ diatas, Return merupakan contoh statement executable yang menginstruksikan agar suatu fungsi mengembalikan nilai balik tertentu. Contoh statement non executable adalah : If, else, dan while.
Main () adalah contoh fungsi, sedangkan "contohvariabel" adalah contoh data. Baik data maupun fungsi harus dideklarasikan. Data perlu dideklarasikan agar compiler tahu berapa byte memori yang harus disediakan untuk data yang bersangkutan, sedangkan fungsi perlu dideklarasikan agar compiler dapat memeriksa ketepatan pemanggilan fungsi yang bersangkutan.
4. Bagian komentar
Program yang baik pada umumnya diberi komentar yang akan membantu orang lain maupun pembuat program itu untuk memahami program yang dibuat. Dalam C atau C++ setiap tulisan yang diapit oleh symbol /* … */ atau setiap baris yang dimulai dengan symbol // dianggap komentar. C++ tidak mengizinkan komentar bersarang ( nested comment), namun Borland C++ lebih fleksibel dalam hal ini. ini merupakan salah satu alat yang sangat penting meskipun tidak berpengaruh untuk pembacaan program.
Perbedaan "/*...*/" dan "//"
- /* komentar */
/*...*/ digunakan untuk memberi tanda komentar pada pernyataan. Dimulai dari tanda /* dan akan diakhiri dimana saja dengan tanda */ . biasanya komentar jenis ini digunakan untuk menuliskan komentar yang banyaknya lebih dari satu baris. - // komentar
penggunaan // digunakan untuk memberi komentar hanya dibaris itu atau setelah tanda //.
PENGENALAN MODEL DATA
Pengenalan Tipe Data
Borland C++ memiliki 7 tipe data dasar, yaitu:
Tipe
Data
|
Ukuran
Memori
|
Jangkauan Nilai
|
Jumlah
Digit
|
Char
|
1 Byte
|
-128 s.d 127
| |
Int
|
2 Byte
|
-32768 s.d 32767
| |
Short
|
2 Byte
|
-32768 s.d 32767
| |
Long
|
4 Byte
|
-2,147,435,648 s.d 2,147,435,647
| |
Float
|
4 Byte
|
3.4 x 10-38 s.d 3.4 x 10+38
|
5-7
|
Double
|
8 Byte
|
1.7 x 10-308 s.d 1.7 x 10+308
|
15-16
|
Long Double
|
10 Byte
|
3.4 x 10-4932 s.d 1.1 x 10+4932
|
19
|
Tipe data tambahan
Unsigned digunakan bila data yang digunakan hanya data yang positif saja.
Tipe
Data
|
Ukuran
Memori
|
Jangkauan Nilai
|
Unsigned Character
|
1 Byte
|
0 s.d 255
|
Unsigned Integer
|
2 Byte
|
0 s.d 65535
|
Unsigned Long Integer
|
42 Byte
|
0 s.d 4,294,967,595
|
Konstanta
Yaitu suatu nilai yang sifatnya tetap. Secara garis besar konstanta dapat dibagi menjadi dua bagian, yaitu:
· Konstanta Bilangan
Konstanta Bilangan dibagi menjadi tiga kelompok, antara lain:
a. Konstanta Bilangan Bulat (Integer), yaitu bilangan yang tidak mengandung nilai desimal. Ex: 1,2,3,100
b. Konstanta Desimal Berpresisi Tunggal (Floating Point). Konstanta ini mempunyai bentuk penulisan, yaitu:
Ø Bentuk Desimal (Ex: 5.57)
Ø Bentuk Eksponensial/bilangan berpangkat (Ex: 4.22e3, artinya 4.22 x 103)
c. Konstanta Desimal Berpresisi Ganda (Double Precision). Konstanta ini sama seperti konstanta floating point tetapi mempunyai daya tampung lebih besar.
· Konstanta Teks
Konstanta Teks dibagi menjadi dua kelompok, antara lain:
a. Data Karakter (Character), yaitu terdiri dari sebuah karakter saja yang diapit oleh tanda kutip tunggal ( ’ ). Data karakter dapat berbentuk abjad (huruf besar/kecil), angka, notasi atau simbol. Ex: ’Y’, ’y’, ’8’, ’&’ dll.
b. Data Teks (String), merupakan rangkaian dari beberapa karakter yang diapit oleh tanda kutip ganda ( ” ). Ex: ”Jakarta”, ”AMIK BSI” dll.
Deklarasi Konstanta
Bentuk penulisannya: const nama_konstanta = nilai_konstanta
Ex: const x = 89; const x = “Bina Sarana Informatika”
Variabel
Adalah suatutempat menampung data atau konstanta di memori yang mempunyai nilai atau data yang dapat berubah-ubah selama proses program. Dalam pemberian nama variabel, mempunyai ketentuan-ketentuan, antara lain:
· Tidak boleh ada spasi tetapi dapat gunakanlah tanda garis bawah sebagai penghubung
· Tidak boleh diawali oleh angka dan menggunakan operador aritmatika
Varibel dibagi menjadi dua jenis kelompok, yaitu:
a. Variabel Numerik, dibagi menjadi tiga macam yaitu:
· Bilangan Bulat (Integer)
· Bilangan Desimal Berpresisi Tunggal (Floating Point)
· Bilangan Desimal Berpresisi Ganda (Double Precision).
b. Variabel Text , dibagi menjadi dua macam yaitu:
· Character (Karakter Tunggal)
· String (Untuk Rangkaian Karakter)
Deklarasi Variabel
Setiap kali pendeklarasian variabel harus diakhiri tanda titik koma ( ; ).
TIPE VARIABEL
|
SIMBOL DEKLARASI
|
Integer
|
int
|
Floating Point
|
float
|
Double Precision
|
double
|
Character
|
char
|
Unsigned Integer
|
unsigned int
|
Unsigned Character
|
unsigned char
|
Long Integer
|
long int
|
Unsigned Long Integer
|
unsigned long int
|
Bentuk penulisannya: Tipe_data nama_variabel
Ex: char nama_siswa;
int nilai;
float rata_rata;
PERINTAH KELUARAN
1. printf( )
Bentuk penulisannya: printf(”string-kontrol”, argumen 1, argumen 2);
String-kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta penentu format. Penentu format dipakai untuk memberi tahu kompiler mengenai jenis data yang dipakai dan akan ditampilkan. Argumen ini dapat berupa variabel, konstanta dan ungkapan. Berikut tabel penentu format printf( )
TIPE DATA
|
PENENTU FORMAT
|
Integer
|
%d
|
Floating Point:
| |
Bentuk Desimal
|
%f
|
Bentuk Berpangkat
|
%e
|
Bentuk Desimal dan Pangkat
|
%g
|
Double Precision
|
%lf
|
Character
|
%c
|
String
|
%s
|
Unsigned Integer
|
%u
|
Long Integer
|
%ld
|
Long Unsigned Integer
|
%lu
|
Unsigned Hexadecimal Integer
|
%x
|
Unsigned Octa Integer
|
%o
|
2. puts( )
Perintah puts( ) sebenarnya sama dengan printf( ), yaitu digunakan untuk mencetak string ke layar. puts( ) berasal dari kata put string.
Perbedaan antara printf( ) dengan puts( ) adalah:
printf( )
|
puts( )
|
Harus menentukan tipe data untuk string, yaitu %s
|
Tidak perlu penentu tipe data string, karena fungsi ini khusus untuk tipe data string.
|
Untuk mencetak pindah baris, memerlukan notasi ’\n’
|
Untuk mencetak pindah baris tidak perlu notasi ’\n’, karena sudah diberikan otomatis
|
3. putchar( )
Perintah ini digunakan untuk menampilkan sebuah karakter kelayar.Penampilan karakter tidak diakhiri pindah baris.
4. cout( )
Untuk menggunakan perintah ini harus menertakan file header iostream.h
PERINTAH MASUKAN
1. scanf( )
Fungsi ini digunakan untuk memasukan berbagai jenis data. Bentuk penulisannya adalah: scanf(”penentu format”,&nama variabel);
Simbol & merupakn pointer yang digunakan untuk menunjuk kealamat variabel memori yang dituju. Berikut Tabel Penentu Format scanf( )
TIPE DATA
|
PENENTU FORMAT
|
Integer
|
%d
|
Floating Point:
| |
Bentuk Desimal
|
%e atau %f
|
Bentuk Berpangkat
|
%e atau %f
|
Double Precision
|
%lf
|
Character
|
%c
|
String
|
%s
|
Unsigned Integer
|
%u
|
Long Integer
|
%ld
|
Long Unsigned Integer
|
%lu
|
Unsigned Hexadecimal Integer
|
%x
|
Unsigned Octa Integer
|
%o
|
2. gets( )
Fungsi ini digunakan untuk memasukan untuk memasukan data string. Bentuk penulisannya adalah: gets(nama variabel-array);
Perbedaan antara scanf( ) dengan gets( ) adalah:
scanf( )
|
gets( )
|
Tidak dapat menerima string yang mengandung spasi atau tab dan dianggap sebagai data terpisah
|
Dapat menerima string yang mengandung sapasi atau tab dan masing-masing dianggap sebagai satu kesatuan data
|
3. cin( )
Untuk bisa menggunakan fungsi ini harus menertakan file header iostream.h
4. getch( )
Fungsi getch( ) (get character and echo) dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan tidak akan ditampilkan dilayar. File header yang harus disertakan adalah conio.h
5. getche( )
Fungsi ini dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan akan ditampilkan dilayar. File header yang harus disertakan adalah conio.h
FUNGSI MANIPULATOR
Manipulator pada umumnya digunakan untuk mengatur tampilan layar.Untuk menggunakan manipulator ini file header yang harus disertakan adalah file header iomanip.h. Ada end setw( ) flush() dec( ) hex( ) oct( )
beberapa fungsi manipulator yang disediakan Borland C++, antara lain:
endl setbase( ) setfill( ) setprecision( ) setiosflags( )
Tidak ada komentar:
Posting Komentar