Actions
Wiki » Historique » Révision 185
« Précédent |
Révision 185/213
(diff)
| Suivant »
Patrice Nadeau, 2026-01-18 20:01
Règles de codage C¶
Le langage C utilisé avec le compilateur GCC :
- Standard C99 (
-std=c99) - Extensions GNU
-
attribute((deprecated)) (
-Wdeprecated-declaration) - attribute((noreturn))
- #pragma GCC message ""
- #pragma GCC warning ""
- #pragma GCC error ""
-
attribute((deprecated)) (
Identifiants¶
- Ne DOIT PAS contenir plus de 31 caractères
ANSI standards
- a @ z
- A @ Z
- 0 @ 9
- Trait de soulignement (__)
- En anglais américain, maximum de 31 caractères :
- Lettres
- Macros :
- Majuscules et minuscules
La parie principale DOIT être en majuscule
- Majuscules et minuscules
- Fonctions, variables, énumérations, structures, définition de type :
- Minuscules
- Macros :
- Nombre
- Commence par une lettre
- Si plusieurs mots sont utilisés, ils DOIVENT être séparées par des traits de soulignement
- Lettres
Fichiers¶
Structure des répertoires et fichiers
Format selon la commande
tree --charset ascii
.
|-- AUTHORS : Fichier contenant les noms et courriels des auteurs
|-- bin : Répertoire contenant le fichier exécutable et les librairies compilées
|-- ChangeLog : Fichier des changements
|-- config.h : Fichier optionel contenant les macros communes au programme dans son ensemble (-imacros)
|-- COPYING : Fichier de licence (standard GNU)
|-- docs : Répertoire de la documentation (.pdf)
|-- include : Répertoire des fichiers d’en-tête (.h)
|-- INSTALL
|-- lib : Répertoire des libraires externes (liens symboliques)
|-- Makefile.in : Fichier d'informations spécifiques du projet pour le Makefile
|-- NEWS :
|-- obj : Répertoire contenant les objets (.o)
|-- README : Fichier d'informations du projet, en format markdown
`-- src : Répertoire des fichiers sources (.c)
Fichiers sources¶
- Nom du fichier :
- Un préfixe en anglais de 8 caractères maximum pouvant contenir :
- Lettres minuscule
- Chiffres
- Trait de soulignement
- DOIT contenir un des suffixe suivants :
-
.h: entête -
.c: sources
-
- Un préfixe en anglais de 8 caractères maximum pouvant contenir :
- Contenus
- Section Doxygen :
-
@file: Le nom du fichier -
@brief: Une brève description -
@version: Le numéro de version -
@date: La date de dernière modification -
@author: Une liste des participant(e)s et leur courriel -
@copyright: La liste des années et participant(e)s
-
- Les fichiers d’entête contiennent en plus
- Une définition macro pour éviter de ré-inclure le fichier (https://fr.wikipedia.org/wiki/Include_guard).
- Section Doxygen :
Exemple¶
#ifndef _test_h
#define _test_h
[[Style]]
## Commentaires
1. Précède l’élément à documenté, avec la même indentation
1. En minuscules et commence par une majuscule
1. Phrase complète en français
1. Sur une ou plusieurs lignes
1. De style
* C (/*... */) : Commentaires du code
* Javadoc (/** */, @) : Commentaires devant apparaître dans la documentation (Doxygen)
> La documentation est partie intégrante du code
1. Les « décorations » (gras, italique, etc.) sont faites avec la syntaxe Markdown
* Italique : `∗` ou `_`
* Gras : `∗∗` ou `__`
1. Les commentaires suivants peuvent aussi être utilisés
* `@todo`
* `@bug`
[[Identifiants]]
[[Macros et préprocesseur]]
[[Énumérations]]
[[Typedef]]
[[Variables]]
[[Structures]]
[[Fonctions]]
[[Librairies]]
[[Atmel AVR]]
Mis à jour par Patrice Nadeau il y a un jour · 185 révisions