home *** CD-ROM | disk | FTP | other *** search
- #include stdio.h
- /*
- ** itou -- convert nbr to unsigned decimal string of width sz
- ** right adjusted, blank filled; returns str
- **
- ** if sz > 0 terminate with null byte
- ** if sz = 0 find end of string
- ** if sz < 0 use last byte for data
- */
- static int lowbit;
-
- itou(nbr, str, sz) int nbr; char str[]; int sz; {
- if(sz>0) str[--sz]=NULL;
- else if(sz<0) sz = -sz;
- else while(str[sz]!=NULL) ++sz;
- while(sz) {
- lowbit=nbr&1;
- nbr=(nbr>>1)&32767; /* divide by 2 */
- str[--sz]=((nbr%5)<<1)+lowbit+'0';
- if((nbr=nbr/5)==0) break;
- }
- while(sz) str[--sz]=' ';
- return str;
- }