
Mes notes sur le C, partie 3 [Chaîne de caractères & incrémentation]
Commencons directement par un bout de code.
const char NOM_JOUEUR[6] = "Faker";
Avec cette ligne il y a beaucoup de nouvelle choses.
Const
Ceci indique que nous voulons créer une constante, c’est à dire une variable qui ne change pas au cours du programme.
Une constante se comporte comme une variable sauf que vous ne pouvez plus changer la valeur une fois qu’elle est défini.
char
Il s’agit du type de notre constante, un caractère dans ce cas.
NOM_JOUEUR[6]
Nous n’avons pas encore vu la notion de tableau mais pour le moment il faut juste savoir que NOM_JOUEUR est un tableau de 6 cases et que chacune des cases est une variable de type char, se qui pourrait se traduire par cette exemple
char NOM_JOUEUR[6]; NOM_JOUEUR[0] = 'F'; NOM_JOUEUR[1] = 'a'; NOM_JOUEUR[2] = 'k'; NOM_JOUEUR[3] = 'e'; NOM_JOUEUR[4] = 'r'; NOM_JOUEUR[5] = '\0';
Je vous confirme qu’il faut bien un tableau de 6 cases et pas 5, Dans toute les chaînes de caractères il faut préciser quand elle se termine et pour ça vous devez ajouter la valeur “\0”.
Vous pouvez faire des test depuis cette exemple, essayer de remplacer 6 par 3…
#include int main(int argc, char *argv[]) { const char NOM_JOUEUR[6] = "Faker"; printf("Bonjour %s", NOM_JOUEUR); }
Concernant l’incrémentation, il s’agit d’une opération qui consiste à ajouter une valeur entière à une variable.
Voici plusieurs manière d’arriver au même résultat :
nombre = nombre + 1; nombre += 1; nombre++;
Le plus rapide, c’est l’utilisation de “mavariable++” qui signifie “mavariable + 1”, la même chose est possible avec — qui signifie donc -1.
Il existe également ce genre de chose :
nombre += 4; // nombre + 4 nombre -= 3; // nombre - 3 nombre *= 5; // nombre * 5 nombre /= 3; // nombre / 3 nombre %= 3; // nombre % 3
Pour le dernier symbole, il n’est pas forcément familier de tous, il s’agit de l’opérateur “modulo”, cet opérateur récupère le reste d’une division.
Par exemple avec cette opération
nombre = 5 % 2;
5 / 2 ne retourne pas un entier, en revanche 4 / 2 par 2 retourne un entier, il reste donc 1. la variable nombre vaut donc 1.
C’est tres pratique pour savoir si un nombre est pair ou impair
int main(int argc, char *argv[]) { int nombre = 4; if (nombre % 2 == 1) { printf("%d est impair \n", nombre); } else { printf("%d est pair \n", nombre); } }
Je vais aborder les conditions dans le prochain article.