Anatomie d'un programme en C
Un programme en langage C est constitué des éléments suivants :
- Directives de préprocesseur
- Fonctions
- Déclarations de variables
- Instructions
- Structures de contrôle
- Commentaires
Exemple minimaliste
#include <stdio.h> // Directive de préprocesseur
int main() { // Début de la fonction principale
puts("Bonjour."); // Instruction
return 0; // Retourne le code 0 pour indiquer la fin du programme
}
Directives de préprocesseur
Les directives de préprocesseur commencent par le symbole # et sont traitées avant la compilation. Elles servent principalement à inclure des bibliothèques ou définir des constantes.
Inclure la bibliothèque d'entrées/sorties standard (stdio : standard input output)
#include <stdio.h>
Déclarer une constante
#define PI 3.1415
Fonctions
La fonction main est le point d'entrée de tout programme C. Elle retourne un code numérique pour spécifier si le traitement (quelqu'il soit) s'est bien déroulé.
Variables
Une variable doit être déclarée avant utilisation, en précisant son type.
int age = 25; // variable de type nombre entier (integer)
float taille = 1.75; // variable de type nombre réel à virgule flottante
char initiale = 'A'; // variable de type caractère (character)
Instructions
Les instructions sont des opérationsqui sont exécutées par le programme elle peuvent iclure des tests, des opérations mathématiques ou des appels de fonctions.
Chaque instruction en C se termine par un point-virgule ;.
Commentaires
Il existe deux manières d'écrire des commentaires : en-ligne ou en bloc.
Les commentaires en-ligne doivent obligatoirement tenir sur une ligne. Ils Peuvent se trouver à la suite d'une instruction.
// Calcul du discriminant
delta = b * b - 4 * a * c; // Δ = b² - 4ac
Les commentaires en bloc peuvent s'étendre sur plusieurs lignes. Ils sont délimités par /* et */
/* Résolution d'une équation du 2nd degré
Auteur: Emmanuel Medina */
Bibliothèques
stdio
La bibliothèque standard d'entrée/sortie stdio.h, est essentielle pour interagir avec les flux d'entrée et de sortie. Elle fournit des fonctions pour lire et écrire des données, ainsi que pour manipuler les fichiers.
stdlib
La bibliothèque standard stdlib.h (standard library) fournit des fonctions essentielles pour la gestion de la mémoire, le contrôle des processus, le tri des données, les fonctions mathématiques simples et les conversions de texte en nombre.
string
La bibliothèque string.h fournit des fonctions pour manipuler les chaînes de caractères et les blocs mémoire.
strlen(): Calculer la longueur de la chaîne (sans compter le caractère nul).strcpy(): Copier une chaîne dans une autre (=).strcmp(): Comparer deux chaînes (==).strcat(): Concaténer deux chaînes (+).
VOIR en détail le fonctionnement des chaines de caractères.
ctype
La bibliothèque ctype.h fournit des fonctions pour tester et manipuler des caractères.
tolower: Transforme une lettre majuscule en une minuscule.toupper: Transforme une lettre minuscule en une majuscule.isalpha: Vérifie si un caractère est alphabétique (A-Z a-z).islower: Vérifie si un caractère est une lettre minuscule (a-z).isupper: Vérifie si un caractère est une lettre majuscule (A-Z).isdigit: Vérifie si un caractère est un chiffre. (0-9)isalnum: Vérifie si un caractère est alpha-numérique. (A-Z a-z 0-9).isblank: Vérifie si un caractère est blanc (espace ou tabulation).isspace: Vérifie si l'on a à faire à un caractère d'espacement. (caractère blanc \f \r \n \v)iscntrl: Vérifie si l'on a à faire à un caractère de contrôle.ispunct: Vérifie si l'on a à faire à un caractère de ponctuation (!"#$%&'()*+,-./:;<=>?@[]^_`{|}~).isprint: Vérifie si un caractère est affichable (printable).isgraph: Vérifie si un caractère posséde une représentation graphique.isxdigit: Vérifie si un caractère est un chiffre hexadécimal (0-F 0-f).
math
La bibliothèque math.h , permet de définir les principales fonctions usuelles mathématiques.
VOIR les fonctions de la bibliothèque math.h