|
- Types de chaînes de caractères
- Cas particulier
- Chaîne Fixe et chaîne ASCIIZ
- Traitement des chaînes fixes
- Notes
- Valeur par défaut
- Passer une chaîne de caractères en paramètre à une procédure
- Utiliser le caractère guillemet dans une chaîne de caractères
- Comparaison des différents types chaîne disponibles dans WINDEV et dans WINDEV Mobile
Types de chaînes de caractères Le WLangage propose différents types de chaînes de caractères. 1. Les types les plus courants sont les suivants : | | | Caractère codé sur 1 octet.Caractère codé sur 1, 2 ou 4 octets selon le mode de gestion des chaînes de caractères et la plateforme d'exécution.- Sous Windows :
- en mode Ansi, un caractère est codé sur 1 octet,
- en mode Unicode, un caractère est codé sur 2 octets.
- Sous Linux :
- en mode Ansi, un caractère est codé sur 1 octet,
- en mode Unicode, un caractère est codé sur 4 octets.
- Sous iOS, en Unicode, un caractère est codé sur 4 octets.
Lorsque un caractère est vide, sa valeur correspond à Caract(0).
Versions 17 et supérieures Nouveauté 17 | Versions 17 et supérieuresChaîne Ansi Nouveauté 17Chaîne Ansi Chaîne Ansi
| Chaîne de taille dynamique contenant uniquement des caractères au format ANSI. Ce format est notamment nécessaire pour manipuler : - les fichiers XML
- les fichiers RTF
- les fichiers PDF
- les fonctions utilisant le format UTF8, ...
| | Chaîne de taille dynamique contenant uniquement des caractères au format UNICODE. Versions 17 et supérieures Nouveauté 17 | | Chaîne de taille dynamique.
Le type "chaîne" est propre au WLangage. Avec ce type, il n'est pas nécessaire de déclarer la longueur de la chaîne. Celle-ci peut varier de façon libre lors de l'utilisation de la variable. Versions 17 et supérieures Nouveauté 17 | | Zone mémoire binaire. Permet d'écrire un code portable entre WINDEV et WINDEV Mobile en ce qui concerne la manipulation des données brutes. Pour plus de détails, consultez le type "Buffer". | 2. D'autres types de chaînes de caractères peuvent également être utilisés :
| | | Chaîne de taille fixée, terminée par un 0 binaire (identique au langage C). La taille spécifiée correspond au nombre maximum de caractères de la chaîne. Ce type de chaîne de caractères permet de créer un code compatible WINDEV / WINDEV Mobile lors de l'appel d'API existantes sur les deux plateformes. | | Chaîne terminée par un 0 binaire (identique au langage C). La longueur d'une chaîne ASCIIZ est limitée à environ 2 Go. La taille à donner à la chaîne ASCIIZ doit être égale à la taille de la chaîne plus 1 (pour le zéro binaire). | | Chaîne de taille fixe. La longueur d'une chaîne fixe est limitée à environ 2 Go. La chaîne de caractères est complétée : - avec 0 si la variable n'est pas encore affectée.
- avec des espaces si nécessaire si la variable est affectée (elle est semblable au type "string" du Basic).
| | Chaîne précédée d'un octet précisant la longueur (identique au langage Pascal). Cet octet n'est pas accessible. Par exemple chaine[1] représente le premier caractère de la chaîne et non pas sa longueur. La longueur d'une chaîne Pascal est limitée à 255 caractères maximum. La taille à donner à la chaîne Pascal doit être égale à la taille de la chaîne. | | Chaîne de taille fixée contenant uniquement des caractères au format UNICODE. |
Remarques : - Le type "Chaîne sur" doit être utilisé pour envoyer des paramètres en entrée / sortie à une API Windows.
- Tous les types avancés (différents du type "Chaîne") sont disponibles pour compatibilité avec les autres langages de programmation (Turbo Pascal Windows, C, Visual Basic Windows, ...) ou pour recevoir le résultat d'une API Windows.
- WINDEV Mobile et WINDEV ne proposent pas les mêmes types de chaînes de caractères. Pour plus de détails sur les différents types de chaînes de caractères proposées, consultez le paragraphe Notes.
- Une variable de type "Chaîne" ou "Chaîne sur" déclarée et non initialisée correspond à une chaîne vide ("").
- Une variable de type "Buffer" déclarée et non initialisée est vide.
- Une variable de type "Buffer sur" déclarée et non initialisée est remplie avec des 0.
Passer une chaîne de caractères en paramètre à une procédure Il est possible de passer une variable de type "Chaîne" en paramètre à une procédure. Attention : Si la variable a une taille fixée, il faut supprimer les espaces. Par exemple :
MaChaîne est une chaîne MaChaîne = "WINDEV est formidable" // Suppression des espaces dans MaChaîne MaChaîne = SansEspace(MaChaîne) ComptageLettre(MaChaîne) // ComptageLettre est une procédure
Utiliser le caractère guillemet dans une chaîne de caractères Pour utiliser le caractère guillemet dans une chaîne de caractères, il est nécessaire de le doubler. Par exemple :
MaChaîne est une chaîne MaChaîne = "L'option ""Conditions générales"" doit être cochée" Info(MaChaîne) // Affiche : L'option "Conditions générales" doit être cochée
Liste des exemples associés :
|
Exemples unitaires (WINDEV) : Divers types de chaînes
[ + ] Utilisation des différents types de chaînes disponibles avec WINDEV. Les spécificités de chaque type sont détaillées. Types utilisés : - Chaîne "standard" - Chaîne UNICODE - Chaîne fixe - Chaîne Pascal - Chaîne ASCIIZ - Type Buffer
|
Documentation également disponible pour…
|
|
|
| |
| Cliquez sur [Ajouter] pour publier un commentaire |
|
| |
|
| |
| |
| |
| |
| |
| |
| | |
| |