Razlika između C i C ++

Sadržaj:

Anonim

Što je programski jezik C?

C je programski jezik srednje razine koji je u Bell Labu 1972. razvio Dennis Ritchie. Jezik C kombinira značajke jezika niske razine i jezika visoke razine. Stoga se smatra jezikom srednje razine.

C je programski jezik klasične vrste visoke razine koji vam omogućuje razvoj firmvera i prijenosnih aplikacija. Jezik C razvijen je s ciljem pisanja softvera sustava. To je idealan jezik za razvoj sustava firmvera.

Što je programski jezik C ++?

C ++ je računalni programski jezik koji sadrži značajku programskog jezika C kao i Simula67 (prvi objektno orijentirani jezik). C ++ je predstavio koncept klase i objekata.

Inkapsulira jezične značajke visoke i niske razine. Dakle, na njega se gleda kao na jezik srednje razine. Ranije se zvao "C s klasama" jer je imao sva svojstva C jezika.

KLJUČNA RAZLIKA

  • C je procesno orijentirani jezik, dok je C ++ objektno orijentirani programski jezik.
  • C podržava samo pokazivače, dok C ++ podržava i pokazivače i reference.
  • C ne dopušta upotrebu preopterećenja funkcije, dok C ++ omogućuje korištenje preopterećenja funkcije.
  • C podržava ugrađene tipove podataka, dok C ++ podržava ugrađene, kao i korisnički definirane vrste podataka.
  • Jezik C slijedi programski pristup odozgo prema dolje, dok C ++ slijedi pristup programiranja odozdo prema gore.
  • C scan i printf koriste se za standardni ulaz i izlaz, dok su u C ++, cin i cout dati za standardne operacije unosa i izlaza.

C vs. C ++: Ključne razlike

Osnova razlikovanja C C ++
Tip programiranja To je procesno orijentirani jezik. To je objektno orijentirani programski jezik.
Pristup Jezik C slijedi pristup programiranju od vrha prema dolje C ++ slijedi pristup programiranju odozdo prema gore.
Proširenje datoteke Proširenje datoteke programa C je .c Proširenje datoteke programskog jezika c + + je.cpp
Podjela programa U programskom jeziku C, veliki programski kod podijeljen je na male dijelove što se naziva funkcijama. U programskom jeziku C ++, veliki programski kod podijeljen je na Objekte i Razrede.
Struktura Struktura u C ne pruža značajku deklaracije funkcije. Struktura u C ++-u pruža značajku deklariranja funkcije kao funkcije člana strukture.
Inline funkcija Ne dopušta ugrađenu funkciju. Podržava ugrađenu funkciju.
Standardne I / O operacije U C-u skeniranje i ispis koriste se za standardni ulaz i izlaz U C ++ su cin »i cout« dati za standardne ulazne i izlazne operacije.
Sigurnost podataka Na jeziku C podaci nisu zaštićeni. Podaci su sigurni, pa im vanjske funkcije ne mogu pristupiti. (Korištenje koncepta enkapsulacije OOP-ova)
Jednostavnost kodiranja C je stariji programski jezik koji se opisuje kao Hands-on. Na tom jeziku morate poručiti programu da sve učini. Štoviše, ovaj će vam jezik omogućiti gotovo sve. C ++ je produžni jezik C. Omogućuje visoko kontrolirani objektno orijentirani kod.
Kompatibilnost s drugim jezicima C nije kompatibilan s drugim jezikom. C ++ je kompatibilan s ostalim generičkim programskim jezicima.
Pokazivač C podržava samo pokazivače. C ++ podržava i pokazivače i reference.
Promjenjiva U C, varijablu treba definirati na početku programa. C ++ omogućuje deklariranje varijabli bilo gdje u funkciji.
Točka fokusa C se usredotočuje na korake ili postupke koji se slijede za rješavanje problema. C ++ naglašava objekte, a ne korake ili postupke. Ima višu razinu apstrakcije.
Preopterećenje funkcije C ne dopušta upotrebu preopterećenja funkcije. C ++ omogućuje upotrebu preopterećenja funkcije.
Vrste podataka Jezik C ne dopušta deklariranje vrsta podataka niza ni logičke vrijednosti. Podržava ugrađene i primitivne tipove podataka. C ++ podržava String i Boolean vrste podataka.
Rukovanje iznimkama C ne podržava rukovanje iznimkama. Međutim, to se može izvesti pomoću nekih zaobilaznih rješenja. C ++ podržava rukovanje iznimkama. Štoviše, ova se operacija može izvesti pomoću bloka try and catch.
Funkcije Ne dopušta funkcije sa zadanim aranžmanima Dopusti funkcije sa zadanim aranžmanima.
Prostor imena Nema ga u jeziku C. Prisutan je u jeziku C ++.
Izvorni kod Izvorni kod programa slobodnog formata. Izvorno razvijen iz programskog jezika C.
Odnos C je podskup C ++. Ne može pokrenuti C ++ kôd. C ++ je superset C. C ++ može pokretati većinu C koda, dok C ne može pokretati C ++ kôd.
Vođen od strane Jezik vođen funkcijama Objektno vođen jezik
Usredotočenost Fokusira se na metodu ili proces umjesto na podatke. Fokusira se na podatke umjesto na metodu ili postupak.
Kapsulacija Ne podržava enkapsulaciju. Kako su Podaci i funkcije zasebni i besplatni entiteti. Podržava enkapsulaciju. Podaci i funkcije zajedno su enkapsulirani kao objekt.
Skrivanje informacija C ne podržava skrivanje informacija. Na ovom su jeziku podaci besplatni i mogu se mijenjati izvan koda. Inkapsulacija skriva podatke. Tako da se strukture podataka i operatori koriste prema namjeri.
Upravljanje memorijom C pruža funkcije malloc () i calloc () za dinamičko dodjeljivanje memorije. U tu svrhu C ++ nudi novi operator.
Vrste podataka Podržava ugrađene vrste podataka. Podržava ugrađene i korisnički definirane vrste podataka.
Globalne varijable Omogućuje višestruku deklaraciju globalnih varijabli. Višekratna deklaracija globalnih varijabli nije dopuštena.
Koncept mapiranja Mapiranje između podataka i funkcije vrlo je složeno. Mapiranje između podataka i funkcije može se lako uspostaviti pomoću "Klase i objekti".
Nasljeđivanje Nasljeđivanje nije podržano C Nasljeđivanje je moguće na jeziku C ++.
Zadana datoteka zaglavlja C koristi zaglavnu datoteku stdio.h. C ++ koristi iosteam.h kao zadanu datoteku zaglavlja.
Virtualna funkcija Koncept virtualnih funkcija prisutan je u C. Koncept virtualne funkcije ne koristi se u C ++.
Ključne riječi Sadrže 32 ključne riječi. Sadrži 52 ključne riječi.
Polimorfizam U C. Polimorfizam nije moguć Koncept polimorfizma koristi se u jeziku C ++. Polimorfizam je jedno od najvažnijih obilježja OOPS-a.
GUI programiranje Jezik C nudi GTK alat za GUI programiranje C ++ podržava Qt alate za GUIprogramiranje