19 Perbedaan Antara Bahasa Pemrograman C++ dengan C |
Bahasa Pemrograman C++ dan C dapat digolongkan sebagai bahasa pemrograman tingkat tinggi. Bahasa C dikembangkan pada tahun 1972 oleh Dennis Ritchiie di Bell Telephone Laboratories, bahasa C merupakan bahasa pengembangan dari Bahasa B. Bahasa B sendiri dikembangkan pada tahun 1970 dan diciptakan oleh Ken Thomposon. Bahasa B juga merupakan Bahasa turunan dari bahasa BCL. Dan Bahasa C++ merupakan evolusi dari Bahasa C yang dikembangkan oleh BJane Stroustrup pada tahun 1980 di AT&T, lebih lengkapnya mengenai sejarah Bahasa Pemrograman C++ bisa tengok di postingan saya sebelumnya.
Bahasa C++ merupakan bahasa pemrograman yang berbasis Object Oriented Programming. Sedangkan Bahasa C merupakan bahasa pemrograman yang berbasis prosedural, dimana penyelesaian masalah dengan cara membagi bagi suatu problem/masalah ke dalam sub - sub masalah yang lebih kecil/ringkas. Bahasa Pemrograman C++ dalam melakukan penyelesaian masalah yang dilakukan pertama kali dengan cara mendefinisikan ke dalam class- class yang merupakan a.-class yang sebelumnya dibuat sebagai abstraksi dari objek Fisik. Objek merupakan isi dari Class, Objek ini mempunyai kemapuan dan anggota anggotanya. Stelelah kita buat menjadi beberapa class, maslaah akan terpecahkan menggunakan metode class tersebut. Kedua bahasa tersebut dapat kita lihat dari strukturnya.
Tapi jika suatu Bahasa C++ bukan OOP (Object Oriented Programming) maka perbedaan tersebut dapat kita lihat secara langsung karena hanya berebeda dalam penulisan code dan librarynya saja.
Contoh Program Sederhana (Menghitung Luas Segitiga) dengan Menggunakan Bahasa Pemrograman C dan C++
Sebelumnya melanjutkan pertama mari kita lihat perbedaan antara program C++ dengan C dibawah ini.#include <stdio.h>
int main (){
float alas, tinggi, luas;
printf("=====================================\n");
printf("===Program Luas Segitiga Siku Siku===\n");
printf("=====================================\n");
printf("\nRUmus Untuk Menghitung Segitiga = (Alas x Tinggi):2");
printf("\nMasukkan Panjang Alas : ");scanf("%f",&alas);
printf("\nMasukkan Panjang Tinggi : ");scanf("%f",&tinggi);
luas = (alas * tinggi)/2;
printf("Luas Segitiga : = %f", luas);
return 0;
}
Hasil Compile Bahasa Pemrograman C :
#include <iostream>
using namespace std;
int main (){
float alas, tinggi, luas;
cout << "=====================================\n";
cout << "===Program Luas Segitiga Siku Siku===\n";
cout << "=====================================\n";
cout << "\nRUmus Untuk Menghitung Segitiga = (Alas x Tinggi):2";
cout << "\nMasukkan Panjang Alas : ";
cin >> alas;
cout << "\nMasukkan Panjang Tinggi : ";
cin >> tinggi;
luas = (alas * tinggi)/2;
cout << "Luas Segitiga : " << luas <<endl;
return 0;
}
Hasil Compile Bahasa Pemrograman C++
Bisa dilihat dari atas hampir mirip kan. Saya compile keduanya menggunakan software gratis Dev C++. Karena Bahasa Pemrograman C++ merupakan evolusi dari Bahasa C maka dari itu Bahasa C tersebut dapat digunakan di Dev C++. Untuk lengkapnya sejarah mengenai Bahasa Pemrograman C++ bisa kalian lihat postingan yang lain. Search aja di kolom seach blog ini nanti nongol.
Mari kita bahas perbedaan antara Perbedaan Bahasa Pemrograman C++ dengan Bahasa Pemrograman C.
19 Perbedaan Bahasa Pemrograman C dan C++
1. Dari Segi CakupanBahasa C
Bahasa C merupakan bahasa bagian dari C++, tapi tidak bisa dikatakan sebaliknya karena perbedaan tersebut.
Bahasa C++
Hampir sama yang saya katakan diatas. Sebagian besar Bahasa C bisa dijalankan di Bahasa C++ tapi tidak untuk sebalinya. Untuk lebih jelasnya mari lihat dibawah ini.
Untuk penjelasannya saya mengambil contoh mengenai Program Menghitung Luas Segitiga. Dalam bahasa C kita tidak bisa menggunakan perintah "cout", karena perintah cout kita perlu memanggil Library / File Header "iostream". Jika kita memanggil iostream dalam program tersebut maka yang terjadi program tersebut akan eror. Karena Library iostream hanya bisa digunakan di C++.
Segi Cakupan Bahasa Pemrograman C |
Sedangkan jika kita menggunakan Bahasa Pemrograman C++ kita dapat menggunakan perintah yang ada di dalam bahasa C. Tidak perlu kita menggunakan Library stdio.h kita menggunakan library iostream karena Bahasa C++ merupakan evolusi dari Bahasa C dan juga kalian harus tahu bahasa C dapat dijalankan di dalam Bahasa Pemrograman C++.
Segi Cakupan Bahasa Pemrograman C++ |
2. Dari Segi Paradigma Pemrograman (Object Oriented VS Prosedural)
Bahasa C
Bahasa C hanya mendukung paradigma pemrograman prosedural sebagai pengembangan kode, dan tidak bisa sebagai OOP.
Bahasa C++
Bahasa C++ mendukung paradigma Pemrograman Prosedural dan tentunya prosedural berbasis Objek. Oleh karena Bahasa C++ juga dikenal dengan bahasa hybrid.
3. Dari Segi Penemu/ Pencipta/ Pendiri/ Pengembang.
Bahasa C
Bahasa C dikembangkan pada tahun 1972 di Bell Telephone Laboratories oleh Dennis Ritchie, dan dikembangkan kembali lagi oleh dua orang, Brian W. Kernighan dan Dennis Ritchie.
Bahasa C++
Bahasa C++ merupakan bahasa yang diciptakan oleh BJarne Stroustrup Bahasa C++ juga dikenal dengan C With Classes (C dengan kelas) dan diciptakan bersifat Object Oriented Programming.
4. Manipulasi Data Oleh Kode Luar
Bahasa C
Bahasa C, data varibel atau entitas bisa dimanipulasi oleh kode luar. Karena Bahasa C tidak didukung dengan informasi yang sembunyi atau biasa dikenal dengan privat /terjaga/protected.
Bahasa C++
Bahasa C++ meruakan bahasa yang dapat menyembunyiakan data dan dapat memastikan bahwa struktur data dan operaor hanya digunakan orang tertentu. Atau biasa dikenal dengan Encapsulation.
5. Melihat Dari Sudut Pandah Terhada Data, Fungsi, dan Prosedur
Bahasa C
Bahasa C data, prosedur,fungsi terpisah dan bebas karena merupakan bahasa pemrograman prosedural.
Bahasa C++
Bahasa C++ data, prosedur, fungsi dapat dikemas bersama dalam satu bentuk objek. Karena merupakan Bahasa Pemrograman yang bersifat Objek.
6. Dukungan Terhadap Inheritance, Enkapsulasi, Polymorphisme
Bahasa C
Tidak memiliki dukungan terhadap Inheritance, Enkapsulasi, Polymorphisme. Karena Pemrograman berdifat prosedural
Bahasa C++
Memiliki dukungan terhadap Inheritance, Enkapsulasi, Polymorphisme. Karena pemrograman bersifat objek programming.
7. Fungsi dan Opertor Overloading
Bahasa C
Bahasa C tidak dapat digunakan untuk fungsi dan operator Overloading
Bahasa C++
Bahas C++ dapat digunakan untuk fungsi dan operator overloading karena telah didukung.
8. Penulisan using namespace std;
Bahasa C
Bahasa C, tidak menggunakan using namespace std;
Bahasa C++
Untuk memperpendek sebuah program kita perlu menggunakan using namespace std; jika tidak menggunakan kata tersebut kita harus menggunakan std:: setiap kita membuat sebuah program.
9. Fungsi dan Struktur
Bahasa C
dalam bahasa C kita perlu mendefinisikan ke dalam struktur.
Bahasa C++
dalam Bhasa C++ kita dapat menggunakan di dalam struktur.
10. Dukungan terhadap Fungsi Virtual
Bahasa C
Bahasa tidak mempunyai dukungan terhadap fungsi virtual. Jika kalian belum tahu Fungsi Virtual merpakan fungsi yang mendukungnya adanya polymorphic function, yang aritnya fungsi dapat diguankan untuk mendefinisikan ulang kelas turunanna.
Bahasa C++
Bahasa C++ telah didukung Fungsi Virtual. Penjelasan diatas.
11. Tipe Data Boolean
Bahasa C
Bahasa C mendefiniskan boolean dengan angka yakni 1 untuk mengatakan benar atau true sedangkan angka 0 untuk mengatakan salah atau false.
Bahasa C++
Bahasa C++ mendifinisikan tipe boolean dengan menampung true untuk nilai benar dan false untuk nilai salah.
12. Library isotream di C++ dengan C
Bahasa C
Bahasa C tidak dapat menggunakan library iostream. maka dari itu library untuk Bahasa C stdio.h
yang dapat menuliskan perintah printf dan scanf
Bahasa C++
Bahasa C++ dapat menggunakan library iostream, dan isotream sendiri telah mengandung stdio.h maka dari itu jika kita menulis printf dan scanf tidak perlu menggunakan stdio.h
13. Dukungan Terdapa Variabel Referensi
Bahasa C
Tidak didukung variabel referensi
Bahasa C++
Didukung dengan adanya Variabel Referensi
14. New VS Malloc
Bahasa C
Dalam mebahas mengenai Pointer kita pasti tidak terlepas dari alokasi dan dealokasi memori. Malloc yang mempunyai fungsi sebagai pengatur alokasi memory pada heap (heap merupakan area memori yang kita gunakan untuk mengalokasikan secara dinamis). Bahasa C menggunakan ini, yakni menggunakan malloc.
Bahasa C++
C++ menggunakan alokasi memory pada ruang kosong menggunakan kata kunci "new". Kata kunci ini biasanya diikuti dengan tipe data.
15. Exception Handling
Bahasa C
Teknik menjecbak error atau penanganan terhadap kesalahan biasa disebuut dengan Exception Handling, Bahasa C tidak mendukung Exception Handling. Maka dari itu jika kita menulis menggunakan Bahasa C dan jika penulisan terjadi eror maka kita perlu menelusuri alur program tersebut dan menguji satu persatu penyebab perkiraan errornya
Bahasa C++
Bahasa C++ telah mendukung Exception handling ini, maka jika terdapat error program program akan berhenti proses dan mencari kesalahnyya dan menangani kesalah dengan tepat sesuai keaslahan yang terjadi. biasa juga disebut dengan tehnik try, catch and throw)
16. Standar Template Library
Standar Template library merupakan kumpulan fungsi dan data khusus yang digunakan untuk struktur data. Misalkan saja Queue, tree, map, dan vector yang digunakan dalam struktur data. Dengan STL programmer dimudahkan karena tidak perlu menggunakan coding dari awal atau nol. Maka dari tugas utama programmer hanya perlu menganalisis dan memilih mana yang paling sesuai untuk programnya.
Bahasa C
Tidak Didukung
Bahas C++
Didukung Standar Template Library (STL)
17. Tipe data String
Bahasa C
Tidak adanya STRING maka dari itu kita perlu mendefinisikan string dengan array of char yang notabene kurang ringkas.
Bisa lihat dibawah ini.
Sources Code :
#include <stdio.h>Jika lihat hasil seperti ini:
int main (){
float alas, tinggi, luas;
//tidak bisa digunakan
//string name="My Name Wegig"
//bisa digunakan
char nama[]="My Name Wegig";
printf(nama);
printf("\n=====================================\n");
printf("===Program Luas Segitiga Siku Siku===\n");
printf("=====================================\n");
printf("\nRUmus Untuk Menghitung Segitiga = (Alas x Tinggi):2");
printf("\nMasukkan Panjang Alas : ");scanf("%f",&alas);
printf("\nMasukkan Panjang Tinggi : ");scanf("%f",&tinggi);
luas = (alas * tinggi)/2;
printf("Luas Segitiga : = %f", luas);
return 0;
}
Tipe Data String Bahasa C - Array of Char |
Bahasa C++
Kita bisa menggunakan string maka dari itu kita tidak perlu menggunakan array of char. Dan menuru saya lebih simpel menggunakan string.
Bisa lihat dibawah ini
#include <iostream>Lihat Hasil Compile
using namespace std;
int main (){
float alas, tinggi, luas;
string name="My Love Name Wegig";
cout << name<<endl;
cout << "=====================================\n";
cout << "===Program Luas Segitiga Siku Siku===\n";
cout << "=====================================\n";
cout << "\nRUmus Untuk Menghitung Segitiga = (Alas x Tinggi):2";
cout << "\nMasukkan Panjang Alas : ";
cin >> alas;
cout << "\nMasukkan Panjang Tinggi : ";
cin >> tinggi;
luas = (alas * tinggi)/2;
cout << "Luas Segitiga : " << luas <<endl;
return 0;
}
Tipe Data String di Bahasa Pemrograman C++ |
18. Metode Pendekatan
Bahasa C
Bahasa C menggunakan Pendekatan Top-Down
Baasa C++
Bahasa C++ menggunakan Pedekatan Down-Top
19. Keamanan
Bahasa C
Bahasa C kurang aman
Bahasa C++
Bahasa C++ bersifat hidden maka cenderung aman.
Dapat saya simpulkan bahwa Bahasa pemrograman C++ merupakan bahasa yang lebih sempurna daripada Bahasa Pemrograman C. Saya dapat simpulkan pula Dalam Bahasa C++ lebih simple daripada Bahasa C. Karena Bahasa Pemrograman C++ merupakan bahasa evolusi dari bahasa C.
Itu saja pembahasan mengenai 19 Perbedaan Bahasa Pemrograman C dengan C++ semoga artikel ini bermanfaat sebagai bahan belajar kalian, atau guna dalam pengerjaan tugas, atau juga sebagai menambah wawasan kalian. Jika terdapat pertanyaan jangan ragu untuk menulis dibawah ini. Terimakasih telah berkunjung di Situs kami.
0 Response to "19 Perbedaan Antara Bahasa Pemrograman C++ dengan C"
Post a Comment