Rozdiel medzi C a C ++

Obsah:

Anonim

Čo je programovací jazyk C?

C je programovací jazyk na strednej úrovni, ktorý vyvinul v Bell Lab v roku 1972 Dennis Ritchie. Jazyk C kombinuje funkcie jazyka na nízkej aj vysokej úrovni. Preto sa považuje za jazyk strednej úrovne.

C je programovací jazyk klasického typu na vysokej úrovni, ktorý vám umožňuje vyvíjať firmvér a prenosné aplikácie. Jazyk C bol vyvinutý s cieľom písania systémového softvéru. Je to ideálny jazyk pre vývoj firmvérových systémov.

Čo je programovací jazyk C ++?

C ++ je počítačový programovací jazyk, ktorý obsahuje funkcie programovacieho jazyka C i Simula67 (prvý objektovo orientovaný jazyk). C ++ zaviedlo koncept triedy a objektov.

Zahŕňa jazykové funkcie vysokej a nízkej úrovne. Považuje sa to teda za jazyk na strednej úrovni. Predtým sa volalo „C s triedami“, pretože malo všetky vlastnosti jazyka C.

KĽÚČOVÝ ROZDIEL

  • C je procedurálne orientovaný jazyk, zatiaľ čo C ++ je objektovo orientovaný programovací jazyk.
  • C podporuje iba ukazovatele, zatiaľ čo C ++ podporuje ukazovatele aj odkazy.
  • C vám neumožňuje používať preťaženie funkcií, zatiaľ čo C ++ vám umožní používať preťaženie funkcií.
  • C podporuje vstavané dátové typy, zatiaľ čo C ++ podporuje vstavané aj používateľom definované dátové typy.
  • Jazyk C sa riadi programovacím prístupom zhora nadol, zatiaľ čo jazyk C ++ sa riadi programovacím postupom zdola nahor.
  • Pre štandardný vstup a výstup sa používa C scan a printf, zatiaľ čo v C ++ sa pre štandardné vstupné a výstupné operácie uvádzajú cin a cout.

C vs. C ++: Kľúčové rozdiely

Základ rozlišovania C. C ++
Typ programovania Je to procedurálne orientovaný jazyk. Je to objektovo orientovaný programovací jazyk.
Prístup Jazyk C sa riadi programovacím prístupom zhora nadol C ++ sa riadi programovacím prístupom zdola nahor.
Rozšírenie súboru Prípona súboru v programe C je .c Prípona programu v jazyku c + + je.cpp
Programové rozdelenie V programovacom jazyku C je veľký programový kód rozdelený na malé kúsky, ktoré sa nazývajú funkcie. V programovacom jazyku C ++ je veľký programový kód rozdelený na objekty a triedy.
Štruktúra Štruktúra v C neposkytuje funkciu deklarácie funkcie. Štruktúra v C ++ poskytuje funkciu deklarovania funkcie ako členskej funkcie štruktúry.
Inline funkcia Nepovoluje vloženú funkciu. Podporuje inline funkciu.
Štandardné I / O operácie V C sa na štandardný vstup a výstup používajú skenovanie a tlač V C ++ sú cin »a cout« uvedené pre štandardné vstupné a výstupné operácie.
Bezpečnosť údajov V jazyku C údaje nie sú zabezpečené. Dáta sú zabezpečené, takže k nim nemôžu získať prístup externé funkcie. (Použitie koncepcie zapuzdrenia OOP)
Jednoduché kódovanie C je starší programovací jazyk, ktorý sa označuje ako praktický. V tomto jazyku musíte programu povedať, aby urobil všetko. Tento jazyk vám navyše umožní robiť takmer všetko. C ++ je rozšírený jazyk jazyka C. Umožňuje vysoko riadený objektovo orientovaný kód.
Kompatibilita s inými jazykmi C nie je kompatibilný s iným jazykom. Jazyk C ++ je kompatibilný s ostatnými všeobecnými programovacími jazykmi.
Ukazovateľ C podporuje iba ukazovatele. C ++ podporuje ukazovatele aj referencie.
Variabilné V jazyku C by mala byť premenná definovaná na začiatku programu. C ++ umožňuje deklarovať premenné kdekoľvek vo funkcii.
Bod zaostrenia C sa zameriava na kroky alebo postupy, ktoré sa dodržiavajú pri riešení problému. C ++ zdôrazňuje objekty, a nie kroky alebo postupy. Má vyššiu úroveň abstrakcie.
Funkčné preťaženie C vám neumožňuje použiť funkciu preťaženia. C ++ vám umožňuje používať preťaženie funkcií.
Dátové typy Jazyk C neumožňuje deklarovať reťazcové alebo boolovské dátové typy. Podporuje zabudované a primitívne dátové typy. C ++ podporuje dátové typy String a Boolean.
Spracovanie výnimiek C nepodporuje spracovanie výnimiek. Môže sa to však vykonať pomocou niektorých riešení. C ++ podporuje spracovanie výnimiek. Túto operáciu je navyše možné vykonať pomocou bloku try and catch.
Funkcie Nepovolí funkcie s predvoleným usporiadaním Povoliť funkcie s predvoleným usporiadaním.
Menný priestor Absentuje v jazyku C. Je prítomný v jazyku C ++.
Zdrojový kód Zdrojový kód programu vo voľnom formáte. Pôvodne vyvinutý z programovacieho jazyka C.
Vzťah C je podmnožina jazyka C ++. Nemôže spustiť kód C ++. C ++ je nadmnožina jazyka C. C ++ dokáže spustiť väčšinu kódu C, zatiaľ čo C nedokáže spustiť kód C ++.
Poháňaný Jazyk riadený funkciami Objektovo riadený jazyk
Zameranie Zameriava sa na metódu alebo postup namiesto údajov. Zameriava sa na údaje namiesto na metódu alebo postup.
Zapuzdrenie Nepodporuje zapuzdrenie. Pretože Údaje a funkcie sú samostatné a bezplatné subjekty. Podporuje zapuzdrenie. Dáta a funkcie sú zapuzdrené spolu ako objekt.
Skrývanie informácií C nepodporuje skrývanie informácií. V tomto jazyku sú údaje bezplatné entity a dajú sa zmeniť mimo kódu. Zapuzdrenie skryje údaje. Aby sa dátové štruktúry a operátory používali podľa zámeru.
Správa pamäte C poskytujú funkcie malloc () a calloc () pre dynamické prideľovanie pamäte. C ++ poskytuje na tento účel nového operátora.
Dátové typy Podporuje zabudované dátové typy. Podporuje zabudované a používateľom definované dátové typy.
Globálne premenné Umožňuje viacnásobnú deklaráciu globálnych premenných. Viacnásobná deklarácia globálnych premenných nie je povolená.
Koncepcia mapovania Mapovanie medzi dátami a funkciami je veľmi komplikované. Mapovanie medzi dátami a funkciami je možné ľahko vytvoriť pomocou funkcie „Triedy a objekty“.
Dedenie Dedenie nie je podporované C Dedenie je možné v jazyku C ++.
Predvolený hlavičkový súbor Použitý hlavičkový súbor stdio.h. C ++ používa iosteam.h ako predvolený súbor hlavičky.
Virtuálna funkcia Koncept virtuálnych funkcií je obsiahnutý v C. Koncept virtuálnej funkcie sa v C ++ nepoužíva.
Kľúčové slová Obsahujú 32 kľúčových slov. Obsahuje 52 kľúčových slov.
Polymorfizmus V C. Polymorfizmus nie je možný Koncept polymorfizmu sa používa v C ++. Polymorfizmus je jednou z najdôležitejších vlastností OOPS.
Programovanie GUI Jazyk C ponúka nástroj GTK na programovanie GUI C ++ podporuje nástroje Qt na programovanie GUI