_memicmp, _memicmp_l
Compare les caractères dans les deux mémoires tampons (respectent pas la casse).
int _memicmp(
const void *buf1,
const void *buf2,
size_t count
);
int _memicmp_l(
const void *buf1,
const void *buf2,
size_t count,
_locale_t locale
);
Paramètres
buf1
Première mémoire tampon.buf2
Deuxième mémoire tampon.count
Nombre de caractères.locale
Paramètres régionaux à utiliser.
Valeur de retour
La valeur de retour indique la relation entre les mémoires tampons.
Valeur de retour |
Relation des premiers octets de nombre de buf1 et de buf2 |
---|---|
< 0 |
buf1 inférieure à buf2 |
0 |
buf1 identique à buf2 |
> 0 |
buf1 est supérieur à buf2. |
_NLSCMPERROR |
Une erreur s'est produite. |
Notes
La fonction _memicmp compare les premiers caractères de count les deux mémoires tampons buf1 et l'buf2 octet par octet. La comparaison ne respecte pas la casse.
Si buf1 ou buf2 est un pointeur null, cette fonction invoque un gestionnaire de paramètres non valides, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, la fonction retourne _NLSCMPERROR et définit errno à la valeur EINVAL.
_memicmp utilise les paramètres régionaux actuels pour tout comportement dépend des paramètres régionaux ; _memicmp_l est identique à la différence qu'il utilise les paramètres régionaux transmis à la place. Pour plus d'informations, consultez Paramètres régionaux.
Configuration requise
Routine |
En-tête requis |
---|---|
_memicmp |
<memory.h> ou <string.h> |
_memicmp_l |
<memory.h> ou <string.h> |
Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.
Exemple
// crt_memicmp.c
// This program uses _memicmp to compare
// the first 29 letters of the strings named first and
// second without regard to the case of the letters.
#include <memory.h>
#include <stdio.h>
#include <string.h>
int main( void )
{
int result;
char first[] = "Those Who Will Not Learn from History";
char second[] = "THOSE WHO WILL NOT LEARN FROM their mistakes";
// Note that the 29th character is right here ^
printf( "Compare '%.29s' to '%.29s'\n", first, second );
result = _memicmp( first, second, 29 );
if( result < 0 )
printf( "First is less than second.\n" );
else if( result == 0 )
printf( "First is equal to second.\n" );
else if( result > 0 )
printf( "First is greater than second.\n" );
}
Équivalent .NET Framework
Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.
Voir aussi
Référence
Manipulation de la mémoire tampon
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l