Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstring>
- #include <cerrno>
- #include <cctype>
- #include "nem_oo.h"
- namespace sajat {
- int atoi(const char *p, int base)
- {
- long int number = 0;
- int strstart = -1;
- int strend = std::strlen(p);
- for (int i = 0; i < strend; i++)
- {
- if (strstart == -1)
- {
- if (p[i] >= 48 && p[i] <= 57)
- strstart = i;
- }
- else
- {
- if (p[i] < 48 || p[i] > 57)
- {
- strend = i;
- break;
- }
- }
- }
- if (strstart == -1)
- throw "V90GJ3";
- for (int i = strstart; i < strend; i++)
- {
- if ((p[i] - 48) >= base)
- throw "V90GJ3";
- number *= 10;
- number += p[i] - 48;
- }
- if (base == 10)
- {
- return number;
- }
- int out = 0;
- int i = 0;
- long int remainder = 0;
- while (number > 0)
- {
- remainder = number % 10;
- number /= 10;
- out += remainder * pow(base, i);
- i++;
- }
- return out;
- }
- char* strcat(const char *p1, const char *p2)
- {
- char* array = new char[std::strlen(p1) + std::strlen(p2) + 1];
- std::strcpy(array, p1);
- std::strcat(array, p2);
- return array;
- }
- char *unique(char *first, char *last)
- {
- for (char *temp = first + 1; temp <= last; temp++)
- if (*temp != *first )
- *++first = *temp;
- return first;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement