0Pricing
C Academy · Leçon

Caractères comme entiers

Valeurs ASCII

Caractères comme entiers est une leçon C Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage C Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours C Academy comprend 4 leçons au total.

Les caractères sont des nombres

En C, un char est simplement un petit entier. Chaque caractère possède une valeur numérique définie par la table ASCII.

La lettre 'A' est stockée sous la forme du nombre 65, 'B' vaut 66, et ainsi de suite.

#include <stdio.h>

int main(void) {
    char c = 'A';
    printf("The character %c has value %d\n", c, c);
    return 0;
}

Afficher la valeur ASCII

Utilisez le spécificateur de format %d pour afficher un char sous forme de valeur entière, et %c pour l’afficher comme caractère.

La même variable peut être interprétée des deux façons.

#include <stdio.h>

int main(void) {
    char letter = 'z';
    printf("As char: %c\n", letter);
    printf("As int:  %d\n", letter);
    return 0;
}

Les chiffres ont aussi des codes

Le caractère '0' n’est pas le nombre 0. Sa valeur ASCII est 48.

Les caractères chiffres de '0' à '9' correspondent aux codes 48 à 57, dans l’ordre.

#include <stdio.h>

int main(void) {
    printf("'0' = %d\n", '0');
    printf("'9' = %d\n", '9');
    return 0;
}

Conversion d’un caractère chiffre

Comme les chiffres sont contigus, vous pouvez convertir un caractère chiffre en sa valeur numérique en soustrayant '0'.

'7' - '0' est égal à 7.

#include <stdio.h>

int main(void) {
    char d = '7';
    int value = d - '0';
    printf("The digit value is %d\n", value);
    return 0;
}

Arithmétique sur les caractères

Comme les caractères sont des entiers, vous pouvez effectuer des calculs avec eux. Ajouter 1 à 'A' donne le code de 'B'.

Cela fonctionne parce que les lettres de l’alphabet sont contiguës dans ASCII.

#include <stdio.h>

int main(void) {
    char c = 'A';
    char next = c + 1;
    printf("After A comes %c\n", next);
    return 0;
}

Parcourir l’alphabet

Vous pouvez parcourir les caractères de 'a' à 'z' en utilisant un char comme compteur de boucle.

La boucle compare les codes des caractères exactement comme elle comparerait des nombres.

#include <stdio.h>

int main(void) {
    for (char c = 'a'; c <= 'z'; c++) {
        printf("%c", c);
    }
    printf("\n");
    return 0;
}

L’écart entre les casses

Dans ASCII, les lettres majuscules et minuscules sont séparées de 32. 'a' vaut 97 et 'A' vaut 65.

Ainsi, 'a' - 'A' vaut 32.

#include <stdio.h>

int main(void) {
    printf("'A' = %d\n", 'A');
    printf("'a' = %d\n", 'a');
    printf("Gap = %d\n", 'a' - 'A');
    return 0;
}

Conversion manuelle de la casse

Comme vous connaissez l’écart de 32, vous pouvez convertir les minuscules en majuscules en soustrayant 32.

C’est exactement ce que fait toupper en interne.

#include <stdio.h>

int main(void) {
    char lower = 'm';
    char upper = lower - 32;
    printf("%c becomes %c\n", lower, upper);
    return 0;
}

Caractères spéciaux

Les caractères de contrôle ont eux aussi des codes. Le saut de ligne '\n' vaut 10, la tabulation '\t' vaut 9 et le terminateur nul '\0' vaut 0.

Le caractère espace vaut 32.

#include <stdio.h>

int main(void) {
    printf("newline = %d\n", '\n');
    printf("tab     = %d\n", '\t');
    printf("space   = %d\n", ' ');
    return 0;
}

Un char contient de petits nombres

Un char contient généralement des valeurs comprises entre -128 et 127 (signé), ou entre 0 et 255 (non signé).

Vous pouvez stocker directement de petits entiers dans un char.

#include <stdio.h>

int main(void) {
    char small = 100;
    small = small + 5;
    printf("small = %d\n", small);
    return 0;
}

Construire un décalage de César

En combinant ces idées, un chiffrement de César simple décale chaque lettre d’une quantité fixe à l’aide de l’arithmétique sur les caractères.

Ici, nous décalons une lettre de 3 positions vers l’avant.

#include <stdio.h>

int main(void) {
    char c = 'x';
    char shifted = 'a' + (c - 'a' + 3) % 26;
    printf("%c shifted by 3 = %c\n", c, shifted);
    return 0;
}

Vérification rapide

Testez votre compréhension des caractères considérés comme des entiers.

Récapitulatif

Vous avez appris qu’en C :

  • Un char est un petit entier contenant un code ASCII.
  • %c l’affiche comme un caractère et %d comme un nombre.
  • Les chiffres '0'-'9' et les lettres sont contigus, ce qui permet d’effectuer des calculs.
  • c - '0' convertit un char représentant un chiffre en sa valeur, et l’écart entre les casses est de 32.

Questions Fréquemment Posées

La leçon « Caractères comme entiers » est-elle gratuite ?

Oui — le texte complet de « Caractères comme entiers » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours C Academy, passe à CoddyKit PRO. Le cours C Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Caractères comme entiers » ?

Valeurs ASCII Tu pratiques C Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer C Academy ?

Aucune expérience préalable n'est requise. C Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Caractères comme entiers » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon C Academy ?

Oui. Chaque leçon C Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Caractères comme entiers
  2. La bibliothèque ctype
  3. Lire des caractères
  4. Créer des utilitaires pour caractères
← Retour à C Academy