Syntaxe
Paramètres
| Nom |
Description |
| caractere |
Ce paramètre permet d'indiquer une expression contenant un caractère. |
Description
Cette fonction permet de demander la valeur ASCII du caractère spécifié.
Remarques
- La fonction ORD retourne la valeur numérique du caractère selon le code ASCII : Cela signifie qu'elle traduit un caractère en son équivalent entier
basé sur le standard ASCII. Par exemple, FUNCTION ORD("A") retourne 65. C'est particulièrement utile pour comparer des caractères ou pour effectuer des traitements
codés.
- Cette fonction est souvent utilisée pour effectuer des comparaisons indirectes entre caractères : Au lieu de comparer directement deux lettres, on peut
comparer leurs codes ASCII. Cela permet une évaluation fine de l'ordre lexicographique ou la création de tris personnalisés sur des caractères.
- ORD est pratique pour détecter des catégories de caractères, comme les lettres, les chiffres ou les symboles : Par exemple, on peut déterminer si un
caractère est une lettre majuscule en vérifiant si sa valeur ASCII est comprise entre 65 et 90. Cela permet une validation simple de l'entrée utilisateur.
- Elle est particulièrement utile lorsqu'on travaille avec des encodages de bas niveau ou avec des formats externes : Parfois, dans les interfaces ou les
formats fichiers, il est nécessaire d'encoder ou de décoder manuellement les caractères selon leur valeur ASCII, et ORD fournit le moyen d'y accéder directement.
- La fonction ORD ne prend qu'un seul caractère en paramètre : Si on lui passe une chaîne de plusieurs caractères, seule la première position est prise
en compte. Cela nécessite souvent une extraction préalable, par exemple avec INSPECT ou des fonctions de sous-chaîne.
- ORD est souvent utilisée en complément de la fonction inverse CHAR, qui permet de faire l'opération contraire : Tandis que ORD convertit un caractère en
code ASCII, CHAR transforme un code ASCII en caractère. Ces deux fonctions ensemble permettent des manipulations puissantes sur les données alphanumériques.
- Le résultat retourné par ORD est un entier numérique, utilisable dans tous types de calculs COBOL : Cela veut dire qu'on peut utiliser le résultat pour
incrémenter des compteurs, générer des séquences, ou manipuler dynamiquement des index dans des tableaux ou des chaînes.
- Comme cette fonction repose sur le code ASCII, elle est dépendante du jeu de caractères utilisé par l'environnement : Dans les environnements non-ASCII (comme
EBCDIC), le comportement peut varier ou nécessiter une conversion préalable. Il faut donc être prudent dans les systèmes hétérogènes ou interconnectés.
Dernière mise à jour : Jeudi, le 28 juillet 2011