Longueur maximale d’un littéral de chaîne?

J’essaie de créer un littéral de chaîne longue, que je stocke dans un std :: ssortingng. Si je crée un nombre littéral d’environ 2600 caractères, tout est correct. Si je dépasse ce nombre de symboles, je n’imprime que des caractères aléatoires.

J’utilise la norme C à titre indicatif. Les limites environnementales sont spécifiées comme “4095 caractères dans un littéral de chaîne (après concaténation)”. Mais le code est écrit en C ++.

Ma question est donc la suivante: quelle est la quantité minimale de caractères dans un littéral de chaîne C ++?

(Le problème pourrait peut-être se trouver ailleurs dans le code, mais je voudrais m’assurer de ne pas dépasser une limite définie par la norme. Le texte est imprimé dans un contrôle RichEdit. Je doute donc que ce soit le coupable.)

Le minimum est spécifié dans

Annexe B
Quantités implémentées [implimites]

Caractères dans un littéral de chaîne (après concaténation) [65 536].

Mais notez que:

1) Les ordinateurs étant finis, les implémentations C ++ sont inévitablement limitées dans la taille des programmes qu’elles peuvent traiter avec succès. Chaque implémentation doit documenter ces limitations lorsqu’elles sont connues. Cette documentation peut citer des limites fixes lorsqu’elles existent, indiquer comment calculer les limites de variable en fonction des ressources disponibles ou indiquer que des limites fixes n’existent pas ou sont inconnues.

2) Les limites peuvent limiter des quantités comprenant celles décrites ci-dessous ou d’autres. Le nombre entre parenthèses après chaque quantité est recommandé comme minimum pour cette quantité. Cependant, ces quantités ne sont que des indications et ne déterminent pas la conformité . (c’est moi qui souligne)

Votre implémentation devrait cependant vous fournir ce numéro.