Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- long strtol(const char* s)
- {
- bool sign = false;
- long i, r, base = 10;
- if(s[1] == 'x')
- {
- s+=2;
- base = 16;
- }
- else if(s[1] == 'b')
- {
- s+=2;
- base = 2;
- }
- if(s[0] == '-')
- {
- s+=1;
- sign = true;
- }
- for (i = 0, r = 0;s[i] != '\0';++i)
- r = r*base + s[i] - (s[i] >= '0' && s[i] <= '9' ? '0' :
- s[i] >= 'A' && s[i] <= 'Z' ? ('A' - 10) : ('a' - 10));
- return (sign ? -r : r);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement