------------ CODING STYLE ------------ Il s'agit ici de définir les conventions habituelles de programmation. Indentation: - 2 espaces par niveau d'indentation - lignes sur 80 colonnes Accolades: On reprend les conventions de K&R, qui sont les standards les plus courant. Pour résumer: - on met l'accolade ouvrante en fin de ligne - on met l'accolade fermante à la ligne - on met des accolades pour chaque bloc, même s'il ne contient qu'une seule instruction (fully bracketed syntax) - on ne met pas plusieurs instructions à la suite sur une même ligne - exceptions: - accolade ouvrante à la ligne pour une fonction - pas de retour à la ligne après une accolade fermante s'il y a la suite du statement (cas if-else et do-while) Conventions de nommage: - on utilise habituellement l'anglais plutôt que le français - usage des minuscules et des capitales: - noms de fonctions, variables et types devraient être en minuscules - on utilise les capitales pour les constantes et éventuellement pour certains préfixes lorsque nécessaire (pour certaines fonctions, ou pour certains datatypes) - les noms de fichiers doivent être en minuscules - les noms de fonctions contenant plusieurs mots doivent avoir le caractère '_' comme séparateur (à la différence de Java ou on colle les mots en jouant sur la casse) Optionnelles: - on suffixe les types définis (typedef) par '_t' - on préfixe les structures (struct) par 's_' - on préfixe les énumérations (enum) par 'e_' -------- EXEMPLES -------- Quelques exemples pour illustrer: if (condition1) { instruction; } else if (condition2) { instruction; instruction; } else { instruction; } do { ... } while (condition); type the_name_of_my_function(arguments) { ... } int MAX = 42; ... tab[MAX]; typedef struct s_toto { ... } s_toto_t, *toto_t; typedef enum {...} e_toto_t; Parfois: PREFIX_Datatype variable ou PREFIXDatatype variable ou Datatype variable De manière générale: type variable s_type_t variable e_type_t variable