stringDémarrer avec la chaîne


Remarques

Cette section fournit une vue d'ensemble de la chaîne et de la raison pour laquelle un développeur peut vouloir l'utiliser.

Il devrait également mentionner tous les grands sujets dans la chaîne, et établir un lien avec les sujets connexes. La documentation de la chaîne étant nouvelle, vous devrez peut-être créer des versions initiales de ces rubriques connexes.

Versions

Version Remarque Date de sortie
Chaîne ASCII 7 bits 1963-06-17
UTF-8 8 bits par défaut, longueur variable par substitution 1992-09-30
UCS-2 16 bits, comme UTF-16 sans substituts, utilisé mon Microsoft Windows NT 1993-07-23
UTF-16 16 bits par défaut, longueur variable par substitution 1996-07-31

Cordes

Une chaîne est une séquence de littéraux de caractères. À ce jour, les chaînes de caractères sont prises en charge par tous les langages de programmation modernes 1, mais les concepteurs de langage ne s'entendent pas sur la manière de classer les chaînes. En ce qui concerne la conception des langages de programmation, deux préoccupations principales doivent être prises en compte.

  1. Une chaîne doit-elle être traitée comme une valeur primitive ou composite?
  2. Quelles opérations de chaîne devraient être fournies par le langage lui-même? 2

En faisant d'une chaîne une valeur primitive, les opérations de chaîne fournies par le langage sont toutes intégrées. et ne peut pas être défini dans la langue elle-même. Cela permet certaines optimisations au niveau du compilateur, en particulier en ce qui concerne la disposition de la mémoire et la réutilisation des chaînes à l'aide d'un pool de chaînes. L'inconvénient réside dans le fait de ne pas pouvoir utiliser les remplacements dans les opérations sur les chaînes, et de telles fonctions devraient être appelées à l'aide d'appels de fonctions normaux, tandis que la syntaxe d'utilisation des opérations intégrées est généralement différente. La conséquence est que, si des algorithmes plus efficaces sont découverts, on ne peut pas simplement changer la bibliothèque de chaînes utilisée. Un exemple artificiel étant la recherche de sous-chaînes dans le cadre de l’ensemble de fonctions de base avant le développement de l’algorithme de recherche de chaînes de Boyer – Moore.

Inversement, en définissant une chaîne comme une valeur composite telle qu'un tableau de caractères, toutes les opérations de tableau habituelles deviennent automatiquement applicables aux chaînes. Cependant, toutes les chaînes du langage sont de longueur fixe. 3

En fin de compte, une autre approche consiste à représenter des chaînes comme une liste de caractères qui, comme avec les tableaux, permet à la représentation d’hériter de toutes les opérations de liste.

1 Enregistrez les plus ésotériques tels que Piet
2 Les langages offrent généralement des comparaisons de chaînes, principalement d'égalité, la concaténation de chaînes avec d'autres chaînes, la substitution de caractères simples et de sous-chaînes et le tri lexographique des chaînes. 3 Habituellement