Qu'est-ce que le langage de programmation C?
C est un langage de programmation de niveau intermédiaire développé au Bell Lab en 1972 par Dennis Ritchie. Le langage C combine les fonctionnalités du langage de bas niveau et de haut niveau. Par conséquent, il est considéré comme une langue de niveau intermédiaire.
C est un langage de programmation de type classique de haut niveau qui vous permet de développer des micrologiciels et des applications portables. Le langage C a été développé dans le but d'écrire des logiciels système. C'est un langage idéal pour développer des systèmes de micrologiciels.
Qu'est-ce que le langage de programmation C ++?
C ++ est un langage de programmation informatique qui contient la fonctionnalité du langage de programmation C ainsi que Simula67 (un premier langage orienté objet). C ++ a introduit le concept de classe et d'objets.
Il encapsule les fonctionnalités de langage de haut et de bas niveau. Donc, il est considéré comme un langage de niveau intermédiaire. Auparavant, il s'appelait "C avec classes" car il avait toutes les propriétés du langage C.
DIFFÉRENCE CLÉ
- C est un langage orienté procédure, tandis que C ++ est un langage de programmation orienté objet.
- C prend en charge uniquement les pointeurs tandis que C ++ prend en charge à la fois les pointeurs et les références.
- C ne vous permet pas d'utiliser la surcharge de fonctions tandis que C ++ vous permet d'utiliser la surcharge de fonctions.
- C prend en charge les types de données intégrés tandis que C ++ prend en charge les types de données intégrés et définis par l'utilisateur.
- Le langage C suit l'approche de programmation descendante tandis que C ++ suit une approche de programmation ascendante.
- C scan et printf sont utilisés pour l'entrée et la sortie standard tandis qu'en C ++, cin et cout sont donnés pour les opérations d'entrée et de sortie standard.
C contre. C ++: différences clés
Base de distinction | C | C ++ |
---|---|---|
Type de programmation | C'est un langage orienté vers la procédure. | C'est un langage de programmation orienté objet. |
Approcher | Le langage C suit l'approche de programmation Top Down | C ++ suit une approche de programmation ascendante. |
Extension de fichier | L'extension de fichier d'un programme C est .c | L'extension de fichier d'un langage de programme c + + est.cpp |
Division des programmes | Dans le langage de programmation C, un gros code de programme est divisé en petits morceaux appelés fonctions. | Dans le langage de programmation C ++, un gros code de programme est divisé en objets et classes. |
Structure | La structure en C ne fournit pas la fonctionnalité de déclaration de fonction. | Structure en C ++ fournit la fonctionnalité de déclaration d'une fonction en tant que fonction membre de la structure. |
Fonction en ligne | Il n'autorise pas la fonction en ligne. | Il prend en charge la fonction en ligne. |
Opérations d'E / S standard | En C scan et printf sont utilisés pour l'entrée et la sortie standard | En C ++, cin »et cout« sont donnés pour les opérations d'entrée et de sortie standard. |
Sécurité des données | En langage C, les données ne sont pas sécurisées. | Les données sont sécurisées et ne sont donc pas accessibles par des fonctions externes. (Utilisation du concept d'encapsulation des POO) |
Facilité de codage | C est un langage de programmation plus ancien qui est décrit comme pratique. Dans cette langue, vous devez dire au programme de tout faire. De plus, ce langage vous permettra de faire presque tout. | C ++ est un langage d'extension de C. Il permet le code orienté objet hautement contrôlé. |
Compatibilité avec d'autres langues | C n'est pas compatible avec une autre langue. | C ++ est compatible avec les autres langages de programmation génériques. |
Aiguille | C ne prend en charge que les pointeurs. | C ++ prend en charge les pointeurs et les références. |
Variable | En C, la variable doit être définie au début du programme. | C ++ vous permet de déclarer des variables n'importe où dans la fonction. |
Point de mire | C se concentre sur les étapes ou procédures suivies pour résoudre un problème. | C ++ met l'accent sur les objets et non sur les étapes ou les procédures. Il a un niveau d'abstraction plus élevé. |
Surcharge de fonction | C ne vous permet pas d'utiliser la surcharge de fonctions. | C ++ vous permet d'utiliser la surcharge de fonctions. |
Types de données | Le langage C ne vous permet pas de déclarer des types de données String ou Boolean. Il prend en charge les types de données intégrés et primitifs. | C ++ prend en charge les types de données String et Boolean. |
Gestion des exceptions | C ne prend pas en charge la gestion des exceptions. Cependant, il peut être effectué en utilisant certaines solutions de contournement. | C ++ prend en charge la gestion des exceptions. De plus, cette opération peut être effectuée en utilisant le bloc try and catch. |
Les fonctions | N'autorise pas les fonctions avec des arrangements par défaut | Autoriser les fonctions avec des arrangements par défaut. |
Espace de noms | Il est absent en langage C. | Il est présent dans le langage C ++. |
Code source | Code source du programme au format libre. | Développé à l'origine à partir du langage de programmation C. |
Relation | C est un sous-ensemble de C ++. Il ne peut pas exécuter de code C ++. | C ++ est un sur-ensemble de C. C ++ peut exécuter la plupart du code C tandis que C ne peut pas exécuter de code C ++. |
Conduit par | Langage axé sur les fonctions | Langage orienté objet |
Concentrer | Se concentre sur la méthode ou le processus plutôt que sur les données. | Se concentre sur les données plutôt que sur la méthode ou la procédure. |
Encapsulation | Ne prend pas en charge l'encapsulation. Comme les données et les fonctions sont des entités séparées et libres. | Prend en charge l'encapsulation. Les données et les fonctions sont encapsulées ensemble en tant qu'objet. |
Masquage d'informations | C ne prend pas en charge le masquage d'informations. Dans ce langage, les données sont des entités libres et peuvent être modifiées en dehors du code. | L'encapsulation masque les données. Pour que les structures de données et les opérateurs soient utilisés selon l'intention. |
Gestion de la mémoire | C fournit les fonctions malloc () et calloc () pour l'allocation dynamique de la mémoire. | C ++ fournit un nouvel opérateur à cet effet. |
Types de données | Prend en charge les types de données intégrés. | Prend en charge les types de données intégrés et définis par l'utilisateur. |
Variables globales | Permet la déclaration multiple de variables globales. | Les déclarations multiples de variables globales ne sont pas autorisées. |
Concept de cartographie | Le mappage entre les données et la fonction est très compliqué. | Le mappage entre les données et la fonction peut être facilement établi à l'aide de «Classes et objets». |
Héritage | L'héritage n'est pas pris en charge C | L'héritage est possible en langage C ++. |
Fichier d'en-tête par défaut | C a utilisé le fichier d'en-tête stdio.h. | C ++ utilise iosteam.h comme fichier d'en-tête par défaut. |
Fonction virtuelle | Le concept de Fonctions virtuelles est présent dans C. | Le concept de fonction virtuelle n'est pas utilisé en C ++. |
Mots clés | Contient 32 mots-clés. | Contient 52 mots-clés. |
Polymorphisme | En C. Le polymorphisme n'est pas possible | Le concept de polymorphisme est utilisé en C ++. Le polymorphisme est l'une des caractéristiques les plus importantes de l'OOPS. |
Programmation GUI | Le langage C offre un outil GTK pour la programmation GUI | C ++ prend en charge les outils Qt pour la programmation GUI |