windows-nt/Source/XPSP1/NT/base/cmd/hstoi.c
2020-09-26 16:20:57 +08:00

43 lines
703 B
C

/*++
Copyright (c) 1988-1999 Microsoft Corporation
Module Name:
hstoi.c
Abstract:
Low level utility
--*/
#include "cmd.h"
/*** hstoi - convert a hex string to an integer
*
* Conversion stops when the first non-hex character is found. If the first
* character is not a hex character, 0 is returned.
*
* Eric K. Evans, Microsoft
*/
hstoi( TCHAR *s )
{
int result = 0 ;
int digit ;
if (s == NULL) {
return 0;
}
s = SkipWhiteSpace( s );
for ( ; *s && _istxdigit(*s) ; s++) {
digit = (int) (*s <= TEXT('9')) ? (int)*s - (int)'0' : (int)_totlower(*s)-(int)'W' ;
result = (result << 4)+digit ;
} ;
return (result) ;
}