Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
8687 turbocat 1
#include 
2
#include 
3
 
4
char *__reverse(char *str)
5
{
6
  char tmp, *src, *dst;
7
  size_t len;
8
  if (str != NULL){
9
      len = strlen (str);
10
      if (len > 1) {
11
          src = str;
12
          dst = src + len - 1;
13
          while (src < dst) {
14
              tmp = *src;
15
              *src++ = *dst;
16
              *dst-- = tmp;
17
          }
18
      }
19
  }
20
  return str;
21
}
22
 
23
/* itoa from K&R */
24
void itoa(int n, char s[])
25
{
26
    int i, sign;
27
 
28
    if ((sign = n) < 0)        /* record sign */
29
        n = -n;                /* make n positive */
30
    i = 0;
31
 
32
    do {                       /* generate digits in reverse order */
33
        s[i++] = n % 10 + '0'; /* get next digit */
34
    } while ((n /= 10) > 0);   /* delete it */
35
 
36
    if (sign < 0)
37
        s[i++] = '-';
38
 
39
    __reverse(s);
40
    s[i] = '\0';
41
    return;
42
}