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

Какво е език за програмиране C?
C е език за програмиране от средно ниво, който е разработен в Bell Lab през 1972 г. от Денис Ричи. C език съчетава функциите на ниско ниво, както и език на високо ниво. Следователно се счита за език от средно ниво.
C е класически език за програмиране от високо ниво, който ви позволява да разработвате фърмуер и преносими приложения. Езикът C е разработен с цел писане на системен софтуер. Това е идеален език за разработване на фърмуерни системи.
Какво е C++ език за програмиране?
C++ е език за компютърно програмиране, който съдържа функцията на езика за програмиране C, както и Simula67 (първи обектно-ориентиран език). C++ въведе концепцията за клас и обекти.
Той капсулира езикови характеристики на високо и ниско ниво. Така че той се разглежда като език на средно ниво. По-рано се наричаше „C с класове“, тъй като имаше всички свойства на езика C.
Разлика между Разлика между C и C++
Основа за разграничение | C | C++ |
---|---|---|
Тип програмиране | Това е процедурно ориентиран език. | Това е обектно-ориентиран език за програмиране. |
Подход | Езикът C следва програмния подход отгоре надолу | C++ следвайте подхода за програмиране отдолу нагоре. |
Разширение на файл | Файловото разширение на C програма е .c | Файловото разширение на програмен език c++ е.cpp |
Програмно разделение | В езика за програмиране C голям програмен код е разделен на малки части, които се наричат функции. | In C++ език за програмиране, голям програмен код е разделен на обекти и класове. |
структура | Структурата в C не предоставя функцията за деклариране на функция. | Структура в C++ предоставя функцията за деклариране на функция като функция член на структурата. |
Вградена функция | Не позволява вградена функция. | Поддържа вградена функция. |
Стандартни I/O операции | В C scan и printf се използват за стандартен вход и изход | In C++ cin» и cout« са дадени за стандартни входни и изходни операции. |
Сигурност на данните | В езика C данните не са защитени. | Данните са защитени, така че не могат да бъдат достъпни от външни функции. (Използване на концепцията за капсулиране на ООП) |
Лесно кодиране | C е по-стар език за програмиране, който се описва като Hands-on. На този език трябва да кажете на програмата да направи всичко. Освен това този език ще ви позволи да правите почти всичко. | C++ е език за разширение на C. Той позволява силно контролиран обектно-ориентиран код. |
Съвместимост с други езици | C не е съвместим с друг език. | C++ е съвместим с другите общи езици за програмиране. |
Показалка | C поддържа само указатели. | C++ поддържа както указатели, така и препратки. |
Променлив | В C променливата трябва да бъде дефинирана в началото на програмата. | C++ ви позволява да декларирате променливи навсякъде във функцията. |
Точка на фокус | C се фокусира върху стъпките или процедурите, които са следван за решаване на проблем. |
C++ набляга на обектите, а не на стъпките или процедурите. Има по-високо ниво на абстракция. |
Претоварване на функцията | C не ви позволява да използвате претоварване на функции. | C++ ви позволява да използвате претоварване на функции. |
Типове данни | Езикът C не ви позволява да декларирате Низови или булеви типове данни. Поддържа вградени и примитивни типове данни. |
C++ поддържа типове данни String и Boolean. |
Изключение Handling | 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 програмиране |