Partager via


_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l

Convertit une chaîne en minuscules, à l'aide de les paramètres régionaux ou un objet de paramètres régionaux passés.Ce sont des versions de _strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l avec des améliorations de sécurité comme décrit dans Fonctionnalités de sécurité du CRT.

Important

_mbslwr_s et _mbslwr_s_l ne peuvent pas être utilisés dans les applications qui s'exécutent dans les fenêtres d'exécution.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.

errno_t _strlwr_s(
   char *str,
   size_t numberOfElements
);
errno_t _strlwr_s_l(
   char *str,
   size_t numberOfElements,
   _locale_t locale
);
errno_t _mbslwr_s(
   unsigned char *str,
   size_t numberOfElements
);
errno_t _mbslwr_s_l(
   unsigned char *str,
   size_t numberOfElements,
   _locale_t locale
);
errno_t _wcslwr_s(
   wchar_t *str,
   size_t numberOfElements
);
errno_t _wcslwr_s_l(
   wchar_t *str,
   size_t numberOfElements,
   _locale_t locale
);
template <size_t size>
errno_t _strlwr_s(
   char (&str)[size]
); // C++ only
template <size_t size>
errno_t _strlwr_s_l(
   char (&str)[size],
   _locale_t locale
); // C++ only
template <size_t size>
errno_t _mbslwr_s(
   unsigned char (&str)[size]
); // C++ only
template <size_t size>
errno_t _mbslwr_s_l(
   unsigned char (&str)[size],
   _locale_t locale
); // C++ only
template <size_t size>
errno_t _wcslwr_s(
   wchar_t (&str)[size]
); // C++ only
template <size_t size>
errno_t _wcslwr_s_l(
   wchar_t (&str)[size],
   _locale_t locale
); // C++ only

Paramètres

  • str
    Chaîne terminée par le caractère NULL à convertir en minuscules.

  • numberOfElements
    Taille de la mémoire tampon.

  • locale
    Les paramètres régionaux à utiliser.

Valeur de retour

Zéro si l'opération a réussi ; code d'erreur est différente de zéro en cas de échec.

Ces fonctions valident leurs paramètres.Si str n'est pas une chaîne terminée par le caractère NULL valide, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres .Si est autorisé à l'exécution pour continuer, les fonctions EINVAL de retour et affectez errno à EINVAL.Si numberOfElements est inférieure à la longueur de la chaîne, les fonctions également EINVAL de retour et du jeu errno à EINVAL.

Notes

La fonction d' _strlwr_s convertit, en place, toutes les lettres majuscules dans str en minuscules._mbslwr_s est une version multioctette de caractère d' _strlwr_s._wcslwr_s est une version à caractère élargi d' _strlwr_s.

La valeur de sortie est affectée par la configuration de la définition de catégorie d' LC_CTYPE des paramètres régionaux ; consultez l' setlocale pour plus d'informations.Les versions de ces fonctions sans suffixe d' _l utilisent les paramètres régionaux définis pour ce comportement dépendant des paramètres régionaux ; les versions avec le suffixe d' _l sont identiques sauf qu'elles utilisent le paramètre de paramètres régionaux passé à la place.Pour plus d'informations, consultez Paramètres régionaux.

En C++, l'utilisation de ces fonctions est simplifié par des surcharges de modèle ; les surcharges peuvent également déduire la longueur de la mémoire tampon automatiquement (éliminant le besoin de spécifier un argument de taille) et peuvent remplacer automatiquement des fonctions plus anciennes et non sécurisées par leurs nouvelles, sécurisées équivalents.Pour plus d'informations, consultez Surcharges sécurisées de modèle.

Les versions debug de ces fonctions exécutent d'abord mémoire tampon de 0xFD.Pour désactiver ce comportement, utilisez _CrtSetDebugFillThreshold.

Mappages de routines de texte générique

Routine de TCHAR.H

_UNICODE et non définis _MBCS

_MBCS défini

_UNICODE défini

_tcslwr_s

_strlwr_s

_mbslwr_s

_wcslwr_s

_tcslwr_s_l

_strlwr_s_l

_mbslwr_s_l

_wcslwr_s_l

Configuration requise

Routine

En-tête requis

_strlwr_s, _strlwr_s_l

<string.h>

_mbslwr_s, _mbslwr_s_l

<mbstring.h>

_wcslwr_s, _wcslwr_s_l

<string.h> ou <wchar.h>

Pour des informations de compatibilité supplémentaires, consultez l' Compatibilité dans l'introduction.

Exemple

// crt_strlwr_s.cpp
// This program uses _strlwr_s and _strupr_s to create
// uppercase and lowercase copies of a mixed-case string.
//

#include <string.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
   char str[] = "The String to End All Strings!";
   char *copy1, *copy2;
   errno_t err;

   err = _strlwr_s( copy1 = _strdup(str), strlen(str) + 1);
   err = _strupr_s( copy2 = _strdup(str), strlen(str) + 1);

   printf( "Mixed: %s\n", str );
   printf( "Lower: %s\n", copy1 );
   printf( "Upper: %s\n", copy2 );

   free( copy1 );
   free( copy2 );

   return 0;
}
  
  
  

Équivalent .NET Framework

System::String::ToLower

Voir aussi

Référence

Manipulation de chaînes (CRT)

Paramètres régionaux

Interprétation des séquences de caractères multioctets

_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l