Bahasa pemrograman C
merupakan salah satu bahasa pemrograman komputer yang dibuat pada tahun 1972
oleh Dennis
Ritchie untuk Sistem
Operasi Unix di Bell
Telephone Laboratories.
Meskipun C dibuat untuk memprogram sistem dan jaringan komputer, namun bahasa
ini juga sering digunakan dalam mengembangkan software aplikasi.
Bahasa pemrograman C juga
banyak dipakai oleh berbagai jenis platform sistem operasi dan arsitektur
komputer, bahkan terdapat beberepa compiler yang sangat populer telah tersedia.
C secara luar biasa memengaruhi bahasa pemrograman populer lainnya, terutama
Bahasa pemrograman C++ yang merupakan extensi dari C.
Perbedaan Bahasa C dengan C++
Bahasa pemrograman C dan C++
merupakan bahasa pemrograman tingkat tinggi. Bahasa C++ dicipitakan oleh Bjarne Stroustrup, ia menggunakan Bahasa pemrograman C
sebagai dasar dari Bahasa pemrograman C++. Maka bisa dilihat bahwa Bahasa
pemrograman C++ dengan Bahasa pemrograman C merupakan satu garis keturunan.
Perbedaan dari kedua bahasa tersebut bisa dilihat dari kasat mata dalam
struktur pemrogramannya.
C++ pada awalnya disebut
sebagai “C
dengan Kelas” (C With Classes) dan diciptakan untuk memiliki fitur pemrograman berorientasi objek.
Karena C++ berdasarkan dari Bahasa pemrograman C, maka kebanyakan kode C bisa
dirakit di kompilator C++ dengan mudah.
Perbedaan kecil contohnya
kata “new” dan “delete” yang terdapat di kode C tidak bisa dirakit di C++ karena
kata-kata ini adalah kata dipesan C++. Pustaka C biasanya bisa diimpor ke
pustaka C++, tapi karena kompilator C dan C++ memiliki “name mangling” yang berbeda, maka perubahan kecil di
kode C perlu dilakukan.
Perbedaan
antara bahasa C dan C++ juga dapat kita lihat pada beberapa hal berikut ini :
Pada bahasa pemrograman C++, bool
dapat berisi true ataupun false, mirip Pascal. Sedangkan pada
bahasa pemrograman C tidak ada type boolean. Sebagai gantinya, type
bilangan bulat apapun bisa dipakai sebagai ganti boolean dengan aturan false
adalah 0 dan true adalah angka selain 0.
Pada bahasa pemrograman C,
tidak ada type data khusus string, sehingga string didefinisikan sebagai array of char. Sedangkan pada bahasa pemrograman
C++, untuk menggunakan type string harus ada #include
di awal program harus menggunakan std::string.
- ·
Tipe data struct (record)
Misal deklarasi variabel
siswa ichand;
maka akses ke
elemennya menggunakan titik ‘.‘
contoh
: ichand.nama , ichand.kelas
Jadi format typedef enum {} ;
Untuk contoh :
‘hari
(dalam minggu)’, pada C dan C++ ‘senin’ akan bernilai 0, ‘selasa’=1, ‘rabu’=2
dst
Jika ditulis :
typedef
enum{‘senin’ = 3, ‘selasa’ = 7, ‘rabu’, ‘kamis’=9, ‘jumat’=10, ‘sabtu’ = 20;}
hari;
Maka senin bernilai 3,
selasa=7, rabu=8, kamis=9, jumat=10, sabtu=20.
Jika nilai pada elemen
tersebut tidak didefinisikan, akan dianggap +1 dari elemen sebelumnya.
Pada bahasa pemrograman C
perlu #include di awal program dan output menggunakan fungsi printf (print formatted), Formatnya: printf(“”,[, ,…]);
Jadi, bentuk dari keluaran dituliskan dulu formatnya sebagai parameter pertama
printf dalam bentuk string (diapit oleh petik), yang membedakan text biasa dengan format variabel adalah tanda %.
Pada bahasa pemrograman C, input menggunakan scanf (scan formatted). Format yang digunakan hampir sama dengan printf, namun setelah string format, yang diisi bukan nama
variabel, melainkan pointer dari array tersebut. Maka dalam memasukkan nilai
desimal (%f) kedalam variabel f digunakan pointer f (&f).
Pada bahasa pemrograman C++, perlu #include di
awal program dan input menggunakan std::cin.
Bahasa pemrograman C
merupakan bahasa pemrograman terstruktur yang mempunyai tujuan untuk
mempermudah pembuatan & pengembangan program.
Bahasa pemrograman C++ merupakan bahasa yang berorientasi obyek (OOP) yang mempunyai tujuan untuk meningkatkan produktivitas
lebih.
Dalam Bahasa pemrograman C,
file header yang digunakan adalah stdio.h.
Dalam Bahasa pemrograman C++, file header yang digunakan adalah iostream.h. Terkadang juga memakai conio, stdio, dll. Tetapi iostream wajib digunakan dalam file header nya.
Dalam Bahasa pemrograman C,
penggunaan untuk fungsi output digunakan printf (print formatted).
Dalam Bahasa pemrograman C++, penggunaan untuk fungsi output digunakan perintah
cout.
Dalam Bahasa pemrograman C,
untuk pengambilan karakter melalui keyboard mengunakan scanf.
Dalam Bahasa pemrograman C++, untuk pengambilan karakter melalui keyboard
menggunakan Cin.
Bahasa pemrograman C dan C++
berbeda dalam paradigma pemrograman. Bahasa C lebih mengarah ke prosedural
murni, sedangkan C++ adalah semi-prosedural. Kekuatan utama C++ adalah pada
Object Oriented Programming atau Pemrograman Berorientasi Objek. Dalam
prosedural, masalah dipecah menjadi bagian-bagian yang kecil kemudian dicari
solusi penyelesaian tepat untuk masalah tersebut. Dalam konsep OOP, setiap masalah adalah objek yang memiliki karakteristik
tertentu.
Berbicara mengenai pointer
dan data maka kita tidak akan lepas dari alokasi memori dan dealokasi tentunya.
Dalam Bahasa pemrograman C tidak terdapat kata kunci khusus untuk melakukannya.
Untuk memesan alamat memori di heap kita menggunakan fungsi malloc(). Sedangkan dalam Bahasa pemrograman C++ disediakan kata
kunci new untuk melakukan kegiatan serupa.
Keuntungannya dengan adanya kata kunci new untuk alokasi memori sebagai
perintah built-in dapat mengefisienkan kerja kita.
Ini dia salah satu kelebihan
C++ dibanding banyak bahasa pemrograman lain. Template adalah sistem overload
otomatis terhadap fungsi-fungsi yang kita definisikan, dengan template kita
bisa membuat fungsi generic (fungsi umum) yang dapat dipakai untuk berbagai
tipe data. Jadi kita hanya perlu membuat 1 fungsi untuk semua.
C++ adalah bahasa pemrograman
pertama yang menggunakan sistem exception handling. Exception handling adalah
teknik menjebak error atau penanganan kesalahan. Jika kita menulis kode dalam
bahasa C, kita akan dipusingkan jika terjadi error dalam kode kita. Cara lama
yang dipakai adalah menelusuri alur program dan menguji satu per satu fungsi
yang ada dan diperkirakan menyebabkan error. Dalam C++, manakala terjadi error
program akan menghentikan proses dan mencari penanganan kesalahan yang tepat
sesuai kesalahan yang terjadi.
Satu yang ada di C++ adalah
library khusus bernama STL. STL adalah
kumpulan fungsi-fungsi dan data-data khusus yang banyak digunakan untuk
struktur data. Misalkan queue,
vector, map, tree dll
yang banyak digunakan dalam struktur data. Dengan STL kita tidak perlu mendefinisikan sendiri struktur data
sendiri karena struktur-struktur data tersebut telah disediakan oleh C++. STL Merupakan singkatan dari Standard Template Library. Sesuai namanya, class dalam STL merupakan template sehingga dapat digunakan untuk
berbagai macam tipe data.
Sekian artikel kali ini,
semoga dapat di rasakan manfaatnya, terlebih bagi teman-teman pelajar seperti saya dan teman teman kelompok Milwormjr ataupun
mahasiswa yang sedang mempelajari Dasar Pemrograman di kampus dan sekolahnya masing-masing.