Разлика между C и C ++

Съдържание:

Anonim

Какво е език за програмиране C?

C е език за програмиране от средно ниво, който е разработен в Bell Lab през 1972 г. от Денис Ричи. Езикът C съчетава характеристиките на ниско ниво, както и език на високо ниво. Следователно се счита за език на средно ниво.

C е език за програмиране от класически тип на високо ниво, който ви позволява да разработвате фърмуер и преносими приложения. Езикът C е разработен с цел писане на системен софтуер. Това е идеален език за разработване на системи за фърмуер.

Какво е език за програмиране C ++?

C ++ е език за компютърно програмиране, който съдържа характеристиката на езика за програмиране C, както и Simula67 (първи обектно ориентиран език). C ++ представи концепцията за клас и обекти.

Той капсулира езикови характеристики на високо и ниско ниво. Така че, той се разглежда като език на средно ниво. По-рано се наричаше „C с класове“, тъй като имаше всички свойства на езика C.

КЛЮЧОВА РАЗЛИКА

  • C е процесно ориентиран език, докато C ++ е обектно ориентиран език за програмиране.
  • C поддържа само указатели, докато C ++ поддържа както указатели, така и препратки.
  • C не ви позволява да използвате претоварване на функции, докато C ++ ви позволява да използвате претоварване на функции.
  • C поддържа вградени типове данни, докато C ++ поддържа вградени, както и дефинирани от потребителя типове данни.
  • Езикът C следва подхода за програмиране отгоре надолу, докато C ++ следва подхода за програмиране отдолу-нагоре.
  • C scan и printf се използват за стандартния вход и изход, докато в C ++, cin и cout са дадени за стандартни операции за въвеждане и извеждане.

C Vs. C ++: Основни разлики

Основа на разграничението ° С C ++
Тип програмиране Това е процедурно ориентиран език. Това е обектно-ориентиран език за програмиране.
Приближаване Езикът C следва подхода за програмиране отгоре надолу C ++ следва подхода за програмиране отдолу-нагоре.
Разширение на файл Файловото разширение на програма C е .c Файловото разширение на програмен език c + + е .cpp
Програмно разделение В езика за програмиране C, голям програмен код е разделен на малки парчета, което се нарича функции. В програмния език C ++ голям програмен код е разделен на обекти и класове.
Структура Структурата в C не предоставя характеристиката на декларацията за функция. Структурата в C ++ предоставя функцията за деклариране на функция като функция член на структурата.
Вградена функция Не позволява вградена функция. Той поддържа вградена функция.
Стандартни I / O операции В C сканирането и printf се използват за стандартния вход и изход В C ++ cin »и cout« са дадени за стандартни операции по въвеждане и извеждане.
Сигурност на данните На език C данните не са защитени. Данните са защитени, така че не могат да бъдат достъпни от външни функции. (Използване на концепция за капсулиране на ООП)
Лесно кодиране C е по-стар език за програмиране, който е описан като Hands-on. На този език трябва да кажете на програмата да направи всичко. Освен това този език ще ви позволи да правите почти всичко. C ++ е удължен език на C. Той позволява силно контролиран обектно-ориентиран код.
Съвместимост с други езици C не е съвместим с друг език. C ++ е съвместим с другите родови езици за програмиране.
Показалец C поддържа само указатели. C ++ поддържа както указатели, така и препратки.
Променлива В C променливата трябва да бъде дефинирана в началото на програмата. C ++ ви позволява да декларирате променливи навсякъде във функцията.
Точка на фокус C се фокусира върху стъпките или процедурите, които се следват за решаване на проблем. C ++ подчертава обектите, а не стъпките или процедурите. Има по-високо ниво на абстракция.
Претоварване на функцията C не ви позволява да използвате претоварване на функцията. C ++ ви позволява да използвате функцията за претоварване.
Типове данни Езикът C не ви позволява да декларирате String или Boolean типове данни. Той поддържа вградени и примитивни типове данни. C ++ поддържа String и Boolean типове данни.
Обработка на изключения C не поддържа обработка на изключения. Въпреки това може да се извърши, като се използват някои заобикалящи решения. C ++ поддържа обработка на изключения. Освен това тази операция може да се извърши с помощта на try and catch блок.
Функции Не позволява функции с аранжименти по подразбиране Разрешаване на функции с подредени по подразбиране.
Пространство от имена Отсъства на език C. Той присъства в езика C ++.
Програмен код Изходен код на програмата в свободен формат. Първоначално разработен от езика за програмиране C.
Връзка C е подмножество на C ++. Не може да изпълнява C ++ код. C ++ е надмножество на C. C ++ може да изпълнява по-голямата част от C кода, докато C не може да изпълнява C ++ код.
Каран от Функционален език Обектно управляван език
Фокус Фокусира се върху метод или процес, вместо върху данни. Фокусира се върху данни вместо метод или процедура.
Капсулиране Не поддържа капсулиране. Тъй като данните и функциите са отделни и свободни обекти. Поддържа капсулиране. Данните и функциите се капсулират заедно като обект.
Скриване на информация C не поддържа скриване на информация. На този език данните са свободни обекти и могат да се променят извън кода. Капсулирането скрива данните. Така че структурите на данни и операторите се използват според намерението.
Управление на паметта C предоставят функции malloc () и calloc () за динамично разпределение на паметта. C ++ предоставя нов оператор за тази цел.
Типове данни Поддържа вградени типове данни. Поддържа вградени и дефинирани от потребителя типове данни.
Глобални променливи Позволява многократно деклариране на глобални променливи. Не са разрешени множество декларации на глобални променливи.
Концепция за картографиране Съпоставянето между данни и функции е много сложно. Съпоставянето между Данни и Функции може лесно да бъде установено с помощта на „Класове и обекти“.
Наследяване Наследяването не се поддържа C Наследяването е възможно на език C ++.
По подразбиране заглавен файл C използва заглавния файл stdio.h. C ++ използва iosteam.h като заглавен файл по подразбиране.
Виртуална функция Понятието за виртуални функции присъства в C. Понятието виртуална функция не се използва в C ++.
Ключови думи Съдържа 32 ключови думи. Съдържа 52 ключови думи.
Полиморфизъм В C. Полиморфизмът не е възможен Понятието полиморфизъм се използва в C ++. Полиморфизмът е една от най-важните характеристики на OOPS.
GUI програмиране Езикът C предлага GTK инструмент за GUI програмиране C ++ поддържа Qt инструменти за GUI програмиране