Fichiers » Historique » Révision 41
Révision 40 (Patrice Nadeau, 2025-09-28 11:47) → Révision 41/48 (Patrice Nadeau, 2025-09-28 19:40)
# Fichiers
Format selon la commande `tree --charset ascii`
```
Projet
.
|-- 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
| `-- lib1 (lien symbolique vers le projet de la librairie)
| |-- include
| `-- src
|-- 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)
```
Le nom des fichiers sources et d’en-tête DOIVENT être composés de la manière suivante :
1. Un préfixe en anglais de 8 caractères maximum pouvant contenir :
* Lettres minuscule
* Chiffres
* Trait de soulignement
1. Un des suffixe suivants :
* `.h` : entête
* `.c` : sources
1. Contient une section Doxygen :
1. `@file` : Le nom du fichier
1. `@brief`: Une brève description
1. `@version`: Le numéro de version
1. `@date`: La date de dernière modification
1. `@author`: Une liste des participant(e)s et leur courriel
1. `@copyright`: La liste des années et participant(e)s
1. Les fichiers d’entête contiennent en plus
1. Une définition macro pour éviter de ré-inclure le fichier (<https://fr.wikipedia.org/wiki/Include_guard>).
fichier.
## Exemple
```c
#ifndef _usart_h
#define _usart_h
/**
* @file : test.h
* @brief ATMEL AVR 8-bit C librairie
* @version 0.00.01
* @date 2023-02-26
* @author Patrice Nadeau <pnadeau@patricenadeau.com>
* @copyright 2023 Patrice Nadeau
* @pre AVR supportés (testés en gras) :
* - ATmega88
* - ATmega168
* - **ATmega328P**
*/
...
#endif /*_usart_h*/
```