예제 #1
0
_WCRTLINK CHAR_TYPE *__F_NAME(utoa,_utow)( unsigned value, CHAR_TYPE *buffer, int radix )
{
    CHAR_TYPE   *p = buffer;
    char        *q;
    unsigned    rem;
    unsigned    quot;
    char        buf[34];    // only holds ASCII so 'char' is OK

    buf[0] = '\0';
    q = &buf[1];
    do {
#if defined(_M_IX86) && defined(__WATCOMC__)
        quot = radix;
        rem = __udiv( value, &quot );
#else
        rem = value % radix;
        quot = value / radix;
#endif
        *q = __Alphabet[rem];
        ++q;
        value = quot;
    } while( value != 0 );
    while( (*p++ = (CHAR_TYPE)*--q) )
        ;
    return( buffer );
}
// Implicit declaration & definition of intrinsic functions.
void TEST13() { out(__udiv(15,4) == 3); }