2024-05-26 02:33:18 -04:00
|
|
|
#include <kernel/strcmp.h>
|
2024-05-20 17:39:20 -04:00
|
|
|
|
2024-05-21 22:07:04 -04:00
|
|
|
int strcmp(const char *s1, const char *s2)
|
|
|
|
{
|
|
|
|
while(*s1 && (*s1 == *s2))
|
|
|
|
{
|
|
|
|
s1++;
|
|
|
|
s2++;
|
|
|
|
}
|
|
|
|
return *(const unsigned char*)s1 - *(const unsigned char*)s2;
|
|
|
|
}
|
|
|
|
|
2024-05-20 17:39:20 -04:00
|
|
|
int strncmp( const char * s1, const char * s2, int n ) {
|
|
|
|
while ( n && *s1 && ( *s1 == *s2 ) )
|
|
|
|
{
|
|
|
|
++s1;
|
|
|
|
++s2;
|
|
|
|
--n;
|
|
|
|
}
|
|
|
|
if ( n == 0 )
|
|
|
|
{
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
return ( *(unsigned char *)s1 - *(unsigned char *)s2 );
|
|
|
|
}
|
|
|
|
}
|