Skip to content
Langage Fondateur

C

La "Lingua Franca" du développement logiciel.
Incontournable pour les systèmes d'exploitation, l'embarqué critique et la performance pure (proche du métal).

StandardC17 / C23
ParadigmeImpératif / Procédural

Contribuez à ces cours !

Ce projet est Open Source. Vous pouvez ajouter du contenu, corriger une erreur ou proposer une amélioration directement sur GitHub.

Accéder au dépôt

Domaines d'application

⚙️

Systèmes & Kernels

Le langage des noyaux (Linux, Windows, macOS). Permet d'écrire des pilotes (drivers) et d'interagir directement avec le matériel sans couche d'abstraction.

Linux KernelDriversUnix
💾

Embarqué & IoT

Standard absolu pour les microcontrôleurs et les systèmes temps réel (RTOS) où chaque octet de mémoire et chaque cycle CPU comptent.

ArduinoSTM32Firmware

Bibliothèques Haute Perf

Utilisé pour créer les briques de base nécessitant une vitesse maximale (moteurs graphiques, bases de données, interpréteurs Python/PHP).

OpenGL/VulkanSQLiteFFmpeg

Spécifications Techniques

Bas Niveau

Gestion Mémoire Manuelle

Contrôle total et granulaire via pointeurs, malloc et free. Aucune surcharge cachée (pas de Garbage Collector).

Interopérabilité

ABI Universelle

L'interface binaire du C est le standard de facto. Presque tous les autres langages (Python, Rust, Java) s'interfacent avec le C.

Architecture

Portabilité Absolue

Compile sur pratiquement toutes les architectures processeur existantes, du supercalculateur au microcontrôleur 8-bit.

Philosophie

Simplicité Syntaxique

Un jeu d'instructions minimaliste. Le code fait exactement ce qui est écrit, facilitant la compréhension du fonctionnement machine.

Comparatif Technique

CritèreC 🔵C++Rust
AbstractionMinimale (Procédural)Élevée (OOP/Meta)Moderne (Traits)
Gestion MémoireManuelle (Risquée)RAII / Smart PtrsBorrow Checker (Sûre)
Temps de CompilationTrès RapideLentLent
Taille BinaireExtrêmement CompactCompact (Variable)Moyen (Statique)

Vous, et uniquement vous, êtes responsable de vos actes.