Rozdíl mezi C a C ++

Obsah:

Anonim

Co je programovací jazyk C?

C je programovací jazyk střední úrovně, který vyvinul v Bell Lab v roce 1972 Dennis Ritchie. Jazyk C kombinuje funkce jazyka na nízké i vysoké úrovni. Proto je považován za jazyk střední úrovně.

C je klasický programovací jazyk na vysoké úrovni, který vám umožňuje vyvíjet firmware a přenosné aplikace. Jazyk C byl vyvinut s cílem psát systémový software. Je to ideální jazyk pro vývoj firmwarových systémů.

Co je programovací jazyk C ++?

C ++ je počítačový programovací jazyk, který obsahuje funkce programovacího jazyka C i Simula67 (první objektově orientovaný jazyk). C ++ představil koncept třídy a objektů.

Zapouzdřuje jazykové funkce na vysoké a nízké úrovni. Je tedy považován za jazyk střední úrovně. Dříve se tomu říkalo „C s třídami“, protože mělo všechny vlastnosti jazyka C.

KLÍČOVÝ ROZDÍL

  • C je procedurálně orientovaný jazyk, zatímco C ++ je objektově orientovaný programovací jazyk.
  • C podporuje pouze ukazatele, zatímco C ++ podporuje jak ukazatele, tak odkazy.
  • C vám neumožňuje používat přetížení funkcí, zatímco C ++ vám umožní používat přetížení funkcí.
  • C podporuje předdefinované datové typy, zatímco C ++ podporuje předdefinované i uživatelem definované datové typy.
  • Jazyk C se řídí přístupem programování shora dolů, zatímco jazyk C ++ se řídí přístupem programování zdola nahoru.
  • Pro standardní vstup a výstup se používá C scan a printf, zatímco v C ++ jsou cin a cout uvedeny pro standardní operace vstupu a výstupu.

C vs. C ++: Klíčové rozdíly

Základ rozlišování C C ++
Typ programování Je to procedurálně orientovaný jazyk. Je to objektově orientovaný programovací jazyk.
Přístup Jazyk C se řídí přístupem programování shora dolů C ++ následuje programovací přístup zdola nahoru.
Přípona souboru Přípona souboru programu C je .c Přípona souboru programového jazyka c + + je.cpp
Rozdělení programu V programovacím jazyce C je velký programový kód rozdělen na malé části, které se nazývají funkce. V programovacím jazyce C ++ je velký programový kód rozdělen na objekty a třídy.
Struktura Struktura v C neposkytuje funkci deklarace funkce. Struktura v C ++ poskytuje funkci deklarace funkce jako členské funkce struktury.
Inline funkce Nepovoluje vloženou funkci. Podporuje inline funkci.
Standardní I / O operace V C se pro standardní vstup a výstup používají skenování a tisk V C ++ jsou pro standardní vstupní a výstupní operace uvedeny cin »a cout«.
Bezpečnost dat V jazyce C nejsou data zabezpečena. Data jsou zabezpečená, takže k nim nelze získat přístup pomocí externích funkcí. (Použití konceptu zapouzdření OOP)
Snadné kódování C je starší programovací jazyk, který je popsán jako praktický. V tomto jazyce musíte programu říct, aby dělal všechno. Kromě toho vám tento jazyk umožní dělat téměř cokoli. C ++ je rozšiřující jazyk jazyka C. Umožňuje vysoce kontrolovaný objektově orientovaný kód.
Kompatibilita s jinými jazyky C není kompatibilní s jiným jazykem. C ++ je kompatibilní s ostatními obecnými programovacími jazyky.
Ukazatel C podporuje pouze ukazatele. C ++ podporuje jak ukazatele, tak odkazy.
Variabilní V C by měla být proměnná definována na začátku programu. C ++ umožňuje deklarovat proměnné kdekoli ve funkci.
Bod zaostření C se zaměřuje na kroky nebo postupy, které se při řešení problému dodržují. C ++ zdůrazňuje objekty a ne kroky nebo postupy. Má vyšší úroveň abstrakce.
Přetížení funkce C neumožňuje používat přetížení funkce. C ++ umožňuje používat přetížení funkcí.
Typy dat Jazyk C vám neumožňuje deklarovat datové typy String nebo Boolean. Podporuje vestavěné a primitivní datové typy. C ++ podporuje datové typy String a Boolean.
Zpracování výjimek C nepodporuje zpracování výjimek. Lze jej však provést pomocí některých řešení. C ++ podporuje zpracování výjimek. Tuto operaci lze navíc provést pomocí bloku try and catch.
Funkce Nepovoluje funkce s výchozím uspořádáním Povolit funkce s výchozím uspořádáním.
Jmenný prostor Chybí v jazyce C. Je přítomen v jazyce C ++.
Zdrojový kód Volný formát zdrojového kódu programu. Původně vyvinut z programovacího jazyka C.
Vztah C je podmnožina C ++. Nelze spustit C ++ kód. C ++ je nadmnožina C. C ++ může spouštět většinu kódu C, zatímco C nemůže spouštět kód C ++.
Řizen Funkčně řízený jazyk Objektově řízený jazyk
Soustředit se Zaměřuje se na metodu nebo proces místo na data. Zaměřuje se na data namísto metody nebo postupu.
Zapouzdření Nepodporuje zapouzdření. Protože Data a funkce jsou samostatné a bezplatné entity. Podporuje zapouzdření. Data a funkce jsou zapouzdřeny společně jako objekt.
Skrývání informací C nepodporuje skrývání informací. V tomto jazyce jsou data bezplatnými entitami a lze je změnit mimo kód. Zapouzdření skryje data. Takže datové struktury a operátoři se používají podle záměru.
Správa paměti C poskytují funkce malloc () a calloc () pro dynamické přidělování paměti. C ++ pro tento účel poskytuje nového operátora.
Typy dat Podporuje integrované datové typy. Podporuje integrované a uživatelem definované datové typy.
Globální proměnné Umožňuje vícenásobnou deklaraci globálních proměnných. Vícenásobná deklarace globálních proměnných není povolena.
Koncept mapování Mapování mezi daty a funkcemi je velmi komplikované. Mapování mezi daty a funkcemi lze snadno vytvořit pomocí „Třídy a objekty“.
Dědictví Dědičnost není podporována C Dědičnost je možná v jazyce C ++.
Výchozí soubor záhlaví C použitý záhlaví souboru stdio.h. C ++ používá jako výchozí soubor záhlaví iosteam.h.
Virtuální funkce Koncept virtuálních funkcí je obsažen v C. Koncept virtuální funkce se v C ++ nepoužívá.
Klíčová slova Obsahují 32 klíčových slov. Obsahuje 52 klíčových slov.
Polymorfismus V C. Polymorfismus není možný Koncept polymorfismu se používá v C ++. Polymorfismus je jednou z nejdůležitějších vlastností OOPS.
Programování GUI Jazyk C nabízí nástroj GTK pro programování GUI C ++ podporuje nástroje Qt pro programování GUI