Perbedaan antara bahasa pemrograman C dengan C++. Bahasa pemrograman C++ sesuai dengan namanya adalah pengembangan dari bahasa pemrograman C, dimana dalam C++ dapat menjalankan hampir semua code C, namun tidak demikian sebaliknya. Bahasa pemrograman C++ dianggap bahasa pemrograman dengan tingkat lebih tinggi dari C, karena C++ bersifat OOP (Object Oriented Programming) dan memberikan tambahan fungsi baru dari C.
Bjarne Stroustrup, yang menciptakan bahasa pemrograman C++ menjelaskan bahwa perbedaan dan ketidaksesuaian antara C dengan C++ haruslah diminimalkan. Hal tersebut bertujuan untuk mempermudah pertukaran penggunaan antara keduanya. Terdapat beberapa perbedaan antara kedua bahasa pemrograman tersebut, sebagian besar adalah kelebihan C++ atas C, yakni:
- Bahasa pemrograman C menggunakan paradigma pemrograman secara prosedural, sedangkan C++ menggunakan lebih dari satu paradigma. Dimana pada bahasa pemrograman C penting untuk memberikan langkah prosedural, sedangkan pada C++ lebih mengutamakan data dibandingkan prosesnya.
- Data pada bahasa pemrograman C kurang aman sedangkan pada C++ bersifat hidden sehingga cenderung lebih aman.
- Bahasa pemrograman C menggunakan pendekatan top-down sedangkan C++ sebaliknya menggunakan pendekatan down-top.
- Bahasa pemrograman C++ memungkinkan penggunaan function dalam structure program, sedangkan C tidak.
- Bahasa pemrograman C tersusun atas function-driven, sedangkan C++ tersusun atas object-driven.
- Bahasa pemrograman C++ mendukung exception handling sedangkan C tidak.
- Fungsi standard input-output pada kedua bahasa pemrograman tersebut berbeda pada C menggunakan scanf untuk input dan printf untuk output. Sedangkan C++ menggunakan cin>> sebagai input dan cout<< sebagai output.
- Dalam bahasa pemrograman C++ memungkinkan overloading, yakni dua function yang memiliki nama yang sama dalam satu program dengan menggunakan polymorphism, hal yang dimiliki OOP. Sedangkan bahasa pemrograman C tidak memungkinkan hal tersebut.
- Pada bahasa pemrograman C mapping data dan function sulit dilakukan, sedangkan pada C++ mapping antara keduanya dapat dilakukan dengan menggunakan 'object'.
- Pada bahasa pemrograman C tidak memungkinkan inheritance serta namespace, sedangkan C++ karena bersifat OOP memungkinkan inheritance serta namespace untuk menghindari collision.
- Bahasa pemrograman C lebih compatible dibandingkan C++ dalam hal pemrograman terkait hardware. Bahasa pemrograman C dapat digunakan untuk pemrograman microcontroller.
Bila ada sesuatu yang belum jelas dan ingin tahu lebih dalam seputar project Arduino, pemrograman, dan elektronika, bisa bertanya pada bagian comment.