_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Retourne le nombre de caractères ou d’octets dans un nombre spécifié.

System_CAPS_ICON_important.jpg Important

Les fonctions _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt et _mbsnccnt_l ne peuvent pas être utilisées dans les applications qui s'exécutent dans le Windows Runtime. Pour plus d’informations, consultez Fonctions CRT non prises en charge avec /ZW.

size_t _strncnt(  
   const char *str,  
   size_t count  
);  
size_t _wcsncnt(  
   const wchar_t *str,  
   size_t count  
);  
size_t _mbsnbcnt(  
   const unsigned char *str,  
   size_t count   
);  
size_t _mbsnbcnt_l(  
   const unsigned char *str,  
   size_t count,  
   _locale_t locale  
);  
size_t _mbsnccnt(  
   const unsigned char *str,  
   size_t count  
);  
size_t _mbsnccnt_l(  
   const unsigned char *str,  
   size_t count,  
   _locale_t locale  
);  
  

Paramètres

str
Chaîne à examiner.

count
Nombre de caractères ou d’octets à examiner dans str.

locale
Paramètres régionaux à utiliser.

_mbsnbcntet _mbsnbcnt_l retourner le nombre d’octets trouvé dans la première count de caractères multioctets de str. _mbsnccntet _mbsnccnt_l retourner le nombre de caractères figurant dans la première count d’octets de str. Si un caractère NULL est rencontrée avant l’examen de str a terminé, elles retournent le nombre d’octets ou de caractères se trouvés avant le caractère NULL. Si str est constitué de moins de count caractères ou octets, elles retournent le nombre de caractères ou d’octets dans la chaîne. Si count est inférieur à zéro, ils retournent 0. Dans les versions antérieures, ces fonctions avaient une valeur de retour de type int plutôt que size_t.

_strncntRetourne le nombre de caractères dans la première count octets de la chaîne d’octet str. _wcsncntRetourne le nombre de caractères dans la première count caractères étendus de la chaîne à caractères larges str.

_mbsnbcntet _mbsnbcnt_l compter le nombre d’octets trouvé dans la première count de caractères multioctets de str. _mbsnbcntet _mbsnbcnt_l remplacer mtob et doit être utilisé à la place de mtob.

_mbsnccntet _mbsnccnt_l le nombre de caractères figurant dans la première count d’octets de str. Si _mbsnccnt et _mbsnccnt_l rencontre une valeur NULL dans le deuxième octet d’un caractère codé sur deux octets, le premier octet est également considéré comme NULL et n’est pas inclus dans la valeur du nombre renvoyé. _mbsnccntet _mbsnccnt_l remplacer btom et doit être utilisé à la place de btom.

Si str est un pointeur null ou est count est 0, ces fonctions appellent le Gestionnaire de paramètre non valide, comme décrit dans la Validation des paramètres, errno a la valeur EINVAL, et la fonction retourne 0.

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

Mappages de routines de texte générique

Routine_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_tcsnbcnt_strncnt_mbsnbcnt_wcsncnt
_tcsnccnt_strncnt_mbsnbcntn/a
_wcsncntn/an/a_mbsnbcnt
_wcsncntn/an/a_mbsnccnt
n/an/a_mbsnbcnt_l_mbsnccnt_l
RoutineEn-tête requis
_mbsnbcnt<mbstring.h>
_mbsnbcnt_l<mbstring.h>
_mbsnccnt<mbstring.h>
_mbsnccnt_l<mbstring.h>
_strncnt<tchar.h>
_wcsncnt<tchar.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

// crt_mbsnbcnt.c  
  
#include  <mbstring.h>  
#include  <stdio.h>  
  
int main( void )  
{  
   unsigned char str[] = "This is a multibyte-character string.";  
   unsigned int char_count, byte_count;  
   char_count = _mbsnccnt( str, 10 );  
   byte_count = _mbsnbcnt( str, 10 );  
   if ( byte_count - char_count )  
      printf( "The first 10 characters contain %d multibyte characters\n", char_count );  
   else  
      printf( "The first 10 characters are single-byte.\n");  
}  

The first 10 characters are single-byte.  

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Manipulation de chaînes
Paramètres régionaux
Interprétation des séquences de caractères multioctets
_mbsnbcat, _mbsnbcat_l

Afficher: