Casting (conversion de types)
1. Identité
- Titre : Casting (conversion de types)
- Domaine : Algorithme
- Niveau : Débutant
- Prérequis : Types de données
2. Concept
Le casting consiste à convertir une donnée d'un type vers un autre, à condition que cette conversion ait un sens. Convertir une chaîne "42" en entier fonctionne, parce que le contenu représente bien un nombre. Convertir une chaîne "bonjour" en entier échoue, parce qu'il n'y a rien à en tirer numériquement.
C'est une opération volontaire, jamais automatique : c'est celui qui écrit l'algorithme qui décide de convertir une donnée, pas la machine qui devine.
3. Illustration
ALGORITHME Conversions
VARIABLES
texte : Chaîne ← "42"
nombre : Entier
réel : Réel
DÉBUT
nombre ← Entier(texte) # "42" → 42
réel ← Réel(nombre) # 42 → 42.0
texte ← Chaîne(réel) # 42.0 → "42.0"
Afficher nombre + 1 # → 43 (opération numérique possible)
FIN
4. Pièges fréquents
- Tenter une conversion qui n'a pas de sens, par exemple Entier("bonjour") : la machine ne peut pas deviner un nombre là où il n'y en a pas, et l'algorithme provoque une erreur.
- Convertir sans vérifier d'abord que la donnée source contient bien ce qu'on croit y trouver.
- Oublier de stocker le résultat de la conversion dans une variable : la conversion ne modifie rien toute seule, il faut récupérer sa valeur.