Variables C, types de données et constantes – Guide pratique
Qu'est-ce qu'une variable ?
Une variable est un identificateur qui contient une valeur. Contrairement aux constantes, la valeur d'une variable peut changer pendant l'exécution du programme.
Les variables peuvent être référencées depuis plusieurs endroits dans un programme. Un nom descriptif aide les lecteurs à comprendre le but de la variable.
int height = 170; // taille en centimètres
int age = 29; // âge en années
Avant d'utiliser une variable, elle doit être déclarée. Les noms de variables peuvent contenir des lettres, chiffres et soulignements, mais doivent commencer par une lettre ou un soulignement.
Règles de nommage des variables
- Seules les lettres (a-z, A-Z), chiffres (0-9) et soulignement (_).
- Ne peut pas commencer par un chiffre.
- Pas d'espaces blancs.
- Ne peut pas être un mot-clé réservé.
- Le C est sensible à la casse :
ageetAGEsont des identificateurs distincts.
Noms valides et invalides
Valides :
height _HEIGHT _height1 My_name
Invalides :
1height Hei$ght My name
Déclaration et initialisation des variables
Déclarer d'abord, puis assigner :
int my_variable;
my_variable = 48;
Ou combiner déclaration et initialisation :
int my_variable = 48;
Vue d'ensemble des types de données
Le C offre trois catégories de types de données :
- Primitifs (int, char, float, double, void)
- Dérivés (tableaux, fonctions, pointeurs, structures)
- Définis par l'utilisateur (typedef, structs, enums, unions)
Types de données primitifs
Cinq types fondamentaux :
int– valeurs entièreschar– caractères uniquesfloat– virgule flottante simple précisiondouble– virgule flottante double précisionvoid– aucune valeur (utilisé dans les signatures de fonctions)
Tailles et plages standard des types de données
| Type de données | Taille (octets) | Plage |
|---|---|---|
| char / signed char | 1 | -128 à 127 |
| unsigned char | 1 | 0 à 255 |
| int / signed int | 2 | -32768 à 32767 |
| unsigned int | 2 | 0 à 65535 |
| short int / unsigned short int | 2 | 0 à 65535 |
| signed short int | 2 | -32768 à 32767 |
| long int / signed long int | 4 | -2147483648 à 2147483647 |
| unsigned long int | 4 | 0 à 4294967295 |
| float | 4 | ±3,4E-38 à ±3,4E+38 |
| double | 8 | ±1,7E-308 à ±1,7E+308 |
| long double | 10 | ±3,4E-4932 à ±1,1E+4932 |
Note : Le C n'a pas de type booléen intégré ; utilisez int avec 0 (faux) ou 1 (vrai) ou l'en-tête stdbool.h pour bool.
Types de données entiers
Les entiers sont des nombres entiers. Le int standard 16 bits va de –32768 à 32767. Des variantes plus courtes et plus longues sont disponibles pour s'adapter à la plage requise.
Déclarations typiques :
int age;
short int smallCount;
long int largeCount;
Types de données à virgule flottante
Utilisez float pour les valeurs avec parties fractionnaires jusqu'à environ 6 chiffres de précision. double offre environ 14 chiffres de précision, et long double fournit la plus grande précision.
Exemples :
float ratio = 0.75f;
double balance = 12345.6789;
long double pi = 3.141592653589793238462643383279502884L;
Type de données caractère
Stocke un seul caractère dans une valeur d'un octet. Les caractères sont spécifiés entre guillemets simples.
Exemple :
char letter = 'K';
Type de données void
Indique qu'une fonction ne retourne pas de valeur.
Exemple :
void displayData(void) {
// ...
}
Déclaration de plusieurs variables
Les variables du même type peuvent être déclarées sur une seule ligne, séparées par des virgules :
int x, y, z;
float salary = 13.48f;
char letter = 'K';
Exemples d'affichage avec spécificateurs de format :
printf("%d\n", z);
printf("%f\n", salary);
printf("%c\n", letter);
Constantes
Une valeur constante ne change jamais pendant l'exécution du programme. Le C fournit plusieurs formes :
Constantes entières
Littéraux décimaux, octaux (préfixés par 0) et hexadécimaux (préfixés par 0x).
Exemples :
111 // décimal
012 // octal (10 décimal)
0x2BCD // hexadécimal (19293 décimal)
Constantes de caractère
Caractère unique entouré de guillemets simples ou par son code ASCII.
Exemples :
'A' '9'
Constantes de chaîne
Séquence de caractères entre guillemets doubles.
Exemples :
"Hello" "Programming"
Constantes réelles (virgule flottante)
Nombres avec point décimal ou en notation scientifique.
Exemples :
202.15 300.00 1.23e-4 // 0.000123
Définir des constantes avec const et #define
L'utilisation de const réserve le stockage et impose l'immuabilité :
#include <stdio.h>
int main(void) {
const double PI = 3.141592653589793;
printf("%f\n", PI);
return 0;
}
L'utilisation de #define est une macro de préprocesseur qui ne consomme pas de stockage :
#include <stdio.h>
#define PI 3.141592653589793
int main(void) {
printf("%f\n", PI);
return 0;
}
Résumé
- Les variables sont des identificateurs mutables qui stockent des données.
- Les constantes sont des valeurs immuables fixées à la compilation.
- Les types de base du C :
int,float,charetvoid. - Chaque type a une taille et une plage définies, critiques pour les applications à mémoire contrainte.
Langue C
- Comprendre les protocoles réseau : de la couche physique à l'arbitrage avancé
- Microprocesseurs : l'évolution de l'informatique à programme stocké
- Maîtriser les variables C# et types de données primitifs : guide complet
- Comprendre la portée des variables en C# : Niveaux classe, méthode et bloc
- Maîtriser les variables, littéraux et constantes en C++ : Guide complet
- Comprendre les types de données C++ : Fondamentaux, modificateurs et bonnes pratiques
- Variables, constantes et littéraux en C : Guide complet
- Types de données en C expliqués : int, float, char et plus — Guide complet
- Comprendre les classes de stockage en C : Portée, durée de vie et performance