Ce este limbajul de programare C?
C este un limbaj de programare de nivel mediu care a fost dezvoltat la Bell Lab în 1972 de Dennis Ritchie. Limbajul C combină caracteristicile de nivel scăzut, precum și limbaj de nivel înalt. Prin urmare, este considerat un limbaj de nivel mediu.
C este un limbaj de programare clasic de nivel înalt care vă permite să dezvoltați aplicații firmware și portabile. Limbajul C a fost dezvoltat cu scopul de a scrie software-ul sistemului. Este un limbaj ideal pentru dezvoltarea sistemelor de firmware.
Ce este limbajul de programare C ++?
C ++ este un limbaj de programare pentru computer care conține caracteristica limbajului de programare C, precum și Simula67 (un prim limbaj orientat pe obiect). C ++ a introdus conceptul de clasă și obiecte.
Incapsulează caracteristici de limbaj de nivel înalt și scăzut. Deci, este văzut ca un limbaj de nivel intermediar. Anterior a fost numit „C cu clase”, deoarece avea toate proprietățile limbajului C.
DIFERENȚA CHEIE
- C este un limbaj orientat către proceduri, în timp ce C ++ este un limbaj de programare orientat pe obiecte.
- C acceptă doar pointeri, în timp ce C ++ acceptă atât pointeri, cât și referințe.
- C nu vă permite să utilizați supraîncărcarea funcției, în timp ce C ++ vă permite să utilizați supraîncărcarea funcției.
- C acceptă tipuri de date încorporate, în timp ce C ++ acceptă tipuri de date încorporate, precum și definite de utilizator.
- Limbajul C urmează abordarea de programare de sus în jos, în timp ce C ++ urmează o abordare de programare de jos în sus.
- Scanarea C și printf sunt utilizate pentru intrarea și ieșirea standard, în timp ce în C ++, cin și cout sunt date pentru operațiile standard de intrare și ieșire.
C vs. C ++: Diferențe cheie
Baza distincției | C | C ++ |
---|---|---|
Tipul de programare | Este un limbaj orientat către proceduri. | Este un limbaj de programare orientat pe obiecte. |
Abordare | Limbajul C urmează abordarea de programare Top Down | C ++ urmează abordarea de programare de jos în sus. |
Extensie de fișier | Extensia de fișier a unui program C este .c | Extensia de fișier a unui limbaj de program c + + este.cpp |
Diviziunea programului | În limbajul de programare C, un cod mare de program este împărțit în bucăți mici, numite funcții. | În limbajul de programare C ++, un cod mare de program este împărțit în obiecte și clase. |
Structura | Structura în C nu oferă caracteristica declarației funcției. | Structura în C ++ oferă caracteristica declarării unei funcții ca funcție membru a structurii. |
Funcția în linie | Nu permite funcția în linie. | Suportă funcția în linie. |
Operațiuni I / O standard | În C scanarea și printf sunt utilizate pentru intrarea și ieșirea standard | În C ++, cin și cout «sunt date pentru operațiile standard de intrare și ieșire. |
Securitatea datelor | În limbajul C datele nu sunt securizate. | Datele sunt sigure, deci nu pot fi accesate de funcții externe. (Utilizarea conceptului de încapsulare a OOP-urilor) |
Ușurința de codificare | C este un limbaj de programare mai vechi care este descris ca Hands-on. În această limbă, trebuie să spuneți programului să facă totul. Mai mult, acest limbaj vă va permite să faceți aproape orice. | C ++ este un limbaj de extensie al lui C. Permite codul orientat pe obiect foarte controlat. |
Compatibilitate cu alte limbi | C nu este compatibil cu o altă limbă. | C ++ este compatibil cu celelalte limbaje de programare generice. |
Pointer | C acceptă doar pointeri. | C ++ acceptă atât indicii, cât și referințe. |
Variabil | În C, variabila trebuie definită la începutul programului. | C ++ vă permite să declarați variabile oriunde în funcție. |
Punctul de focalizare | C se concentrează pe pașii sau procedurile care sunt urmate pentru a rezolva o problemă. | C ++ accentuează obiectele și nu pașii sau procedurile. Are un nivel de abstractizare mai mare. |
Funcția de supraîncărcare | C nu vă permite să utilizați supraîncărcarea funcției. | C ++ vă permite să utilizați supraîncărcarea funcției. |
Tipuri de date | Limbajul C nu vă permite să declarați tipuri de date String sau Boolean. Acceptă tipuri de date încorporate și primitive. | C ++ acceptă tipuri de date String și Boolean. |
Manevrarea excepțiilor | C nu acceptă gestionarea excepțiilor. Cu toate acestea, poate fi realizat folosind unele soluții. | C ++ acceptă gestionarea excepțiilor. Mai mult, această operațiune poate fi efectuată folosind blocul try and catch. |
Funcții | Nu permite funcții cu aranjamente implicite | Permiteți funcții cu aranjamente implicite. |
Spațiu de nume | Este absent în limbajul C. | Este prezent în limbajul C ++. |
Cod sursa | Codul sursă al programului în format liber. | Dezvoltat inițial din limbajul de programare C. |
Relaţie | C este un subset al C ++. Nu poate rula codul C ++. | C ++ este un superset al lui C. C ++ poate rula majoritatea codului C în timp ce C nu poate rula codul C ++. |
Condus de | Limbaj bazat pe funcții | Limbaj bazat pe obiecte |
Concentrați-vă | Se concentrează pe metodă sau proces în loc de date. | Se concentrează pe date în loc de metodă sau procedură. |
Incapsularea | Nu acceptă încapsularea. Datele și funcțiile sunt entități separate și libere. | Sprijină încapsularea. Datele și funcțiile sunt încapsulate împreună ca obiect. |
Ascunderea informațiilor | C nu acceptă ascunderea informațiilor. În această limbă, datele sunt entități libere și pot fi modificate în afara codului. | Incapsularea ascunde datele. Astfel, structurile și operatorii de date sunt utilizați conform intenției. |
Gestionarea memoriei | C oferă funcții malloc () și calloc () pentru alocarea dinamică a memoriei. | C ++ oferă un nou operator în acest scop. |
Tipuri de date | Suportă tipuri de date încorporate. | Suportă tipuri de date încorporate și definite de utilizator. |
Variabile globale | Permite declarația multiplă a variabilelor globale. | Declarația multiplă a variabilelor globale nu este permisă. |
Conceptul de cartografiere | Cartarea dintre date și funcție este foarte complicată. | Cartarea dintre date și funcție poate fi ușor stabilită folosind „clase și obiecte”. |
Moştenire | Moștenirea nu este acceptată C | Moștenirea este posibilă în limbajul C ++. |
Fișier antet implicit | C a folosit fișierul antet stdio.h. | C ++ folosește iosteam.h ca fișier de antet implicit. |
Funcție virtuală | Conceptul de funcții virtuale este prezent în C. | Conceptul de funcție virtuală nu este utilizat în C ++. |
Cuvinte cheie | Conține 32 de cuvinte cheie. | Conține 52 de cuvinte cheie. |
Polimorfism | În C. Polimorfismul nu este posibil | Conceptul de polimorfism este utilizat în C ++. Polimorfismul este una dintre cele mai importante caracteristici ale OOPS. |
Programare GUI | Limbajul C oferă instrumentul GTK pentru programarea GUI | C ++ acceptă instrumentele Qt pentru programarea GUI |