star-style

Writing conventions for co-authors
Log | Files | Refs | README | LICENSE

commit e7149353789d7028f08bd1de73ff961da13c55a8
parent 623b401f9863170f605431ff564d7d289eb9e2e0
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Wed, 15 Jul 2026 12:25:27 +0200

Relecture

Diffstat:
Mdoc/fr/star-c.7 | 36++++++++++++++----------------------
1 file changed, 14 insertions(+), 22 deletions(-)

diff --git a/doc/fr/star-c.7 b/doc/fr/star-c.7 @@ -1182,11 +1182,13 @@ if(foo) { .Ed .Pp Dans un même bloc, regrouper les définitions des variables dès lors -qu'elles sont liés sémantiquements : +qu'elles sont liés sémantiquements. +Les trier ensuite par taille mémoire décroissante, et enfin par ordre +alphabétique : .Bd -literal -offset Ds /* Bibliothèque Foo */ -struct foo* foo = NULL; struct foo_args foo_args = FOO_ARGS_DEFAULT; +struct foo* foo = NULL; /* Tableau à traiter */ double* liste = NULL; @@ -1194,19 +1196,9 @@ int capacite = 0; int longueur = 0; .Ed .Pp -Pour chaque groupe de variables, les définir par ordre décroissant de -leur occupation mémoire a priori. -Définir par exemple les variables structurées avant les variables de -données simples. -Cette convention s'inspire des contraintes des compilateurs C -qui, pour garantir l'alignement des données eu égard à leur type, -peuvent ajouter des octets de remplissage, augmentant ce faisant -l'espace mémoire occupée par la fonction. -Un sourcoût marginal qui néanmoins peut s'avérer significatif pour -des fonctions appelée récursivement. -Ordonner les variables par ordre décroissant de leur taille mémoire -tend à limiter le nombre d'octets de remplissage nécessaire, et donc le -coût mémoire associé. +Trier la définition des variables par taille mémoire tend à limiter le +nombre d'octets de remplissage que le compilateur C ajoute pour garantir +l'alignement mémoire de chaque variable eu égard à leur type. .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .Sh LES CONSTANTES Utiliser une énumération si les constantes à définir sont liées @@ -1234,12 +1226,12 @@ ou encore comme valeur vis à vis de laquelle la validité d'une variable du type énumérée peut être vérifiée : .Bd -literal -offset Ds enum molecule { - H2O, + CH4, + CO, CO2, - O3, + H2O, N2O, - CO, - CH4, + O3, NOMBRE_DE_MOLECULES }; @@ -1249,7 +1241,7 @@ enum molecule { ((unsigned)(Mol) < NOMBRE_DE_MOLECULES) static const char* NOM_DES_MOLECULES[NOMBRE_DE_MOLECULES] = { - "H2O", "CO2", "O3", "N2O", "CO", CH4 + "CH4", "CO", "CO2", "H2O", "N2O", "O3" }; .Ed .Pp @@ -1259,8 +1251,8 @@ Et une macro qui liste ses valeurs par défaut, utilisé pour initialiser ladite variable : .Bd -literal -offset Ds struct foo { - int bar; - float baz; + float bar; + int baz; }; #define FOO_DEFAULT__ {-1,0} static const struct foo FOO_DEFAULT = FOO_DEFAULT__;