Les variables

Une variable c’est un terme que l’on donne pour définir les données que nous allons manipuler tout au long du programme. Une variable est volatile car à un moment donné, elle sera supprimée de l’ordinateur, elle devra être libérée. Peu importe le nom qu’elle porte, sauf ceux la :

  • auto
  • break
  • case
  • char
  • const
  • default
  • do
  • double
  • else
  • enum
  • extern
  • float
  • for
  • goto
  • if
  • int
  • long
  • register
  • return
  • short
  • signed
  • sizeof
  • static
  • struct
  • switch
  • typedef
  • union
  • unsigned
  • void
  • volatile
  • while

Le nom de la variable est une sorte d’alias pour mieux se retrouver, elle porte en réalité l’adresse mémoire tel que “0xF500DA” par exemple. Elle se déclare de telle sorte avec un type, le nom et son affectation :

int age = 10;

Il existe différent types de variable, en voici un tableau le tableau récapitulatif :

TypeOccupation mémoireValeur minimumValeur maximum
char
signed char1 octet-128127
unsigned char1 octet0255
int2 octets / 4 octets-32’768 / -2’147’483’64832’767 / 2’147’483’647
unsigned int2 octets / 4 octets0 / 065’535 / 4’294’967’295
short2 octets-32’76832’767
unsigned short2 octets065’535
long4 octets-2’147’483’6482’147’483’647
unsigned long4 octets04’294’967’295
long long8 octets-9’223’372’036’854’780’0009’223’372’036’854’780’000
unsigned long long8 octets018’446’744’073’709’600’000
float4 octets-3.4e383.4e38
double8 octets-1.7e3081.7e308
long double10 octets-1.1e49321.1e4932

Il existe des drapeaux qui permettent d’afficher le contenu des variables tel que :

  • %d Il concernera les nombres entier (int)
  • %f Il concernera les nombres flottant (float / double)
  • %c Il concernera les caractères (char / signed char)
  • %s Il concernera les chaines de caractères
  • %.3f permet de récupérer seulement 3 chiffres après la virgule

Par exemple :

#include <stdio.h>

int main(void)
{
    int nombre = 10;
    printf("Le nombre est %d\n", nombre);
    return 0;
}

Il existe ensuite des mots clefs important à savoir. Même si les compilateurs de maintenant permettent de le faire automatiquement, que l’on peut mettre avant le type de variable :

  • register Il permet de stocker la variable dans la mémoire du processeur et non dans la RAM
  • volatile Il permet de faire en sorte que la variable ne passe jamais par la mémoire du processeur