2010-06-23 5 views
4

appel à la fonctionsetlocale valeur de retour

setlocale(LC_MESSAGES , NULL) 

renvoie « » (chaîne vide) non nul ou tout lieu.

Pourquoi est-ce que j'obtiens cette valeur de retour?

est-ce parce que cette fonctionnalité n'est pas implémentée dans la plateforme?

Répondre

0

Lors de la saisie sur setlocale, la chaîne vide "" représente les paramètres régionaux par défaut de l'environnement, qui peuvent différer des paramètres régionaux C minimaux représentés par "C". Il se peut que setlocale ait été appelé avec la chaîne vide et c'est la manière de la plate-forme de l'indiquer. Cependant, on espère ou même s'attendre à ce que la chaîne retournée soit plus informative, par exemple "en_US.UTF8". Les informations contenues dans l'environnement sont peut-être mal formées ou ne sont pas prises en charge et c'est ce que le système peut faire de mieux. La valeur de retour de l'appel supposé à setlocale avec la chaîne vide en entrée aurait dû être vérifiée, car un échec à ce point aurait retourné un pointeur nul.