Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <limits.h>
- #include <errno.h>
- int arg2int(const char *arg)
- {
- errno = 0;
- char *tmp;
- long larg = strtol(arg, &tmp, 10);
- if (*tmp == '\0' && errno == 0 && larg >= INT_MIN && larg <= INT_MAX)
- return (int)larg;
- return -1;
- }
- void dec2hexarr(int dec, char *buf)
- {
- int i = 0;
- int rem;
- while (dec)
- {
- rem = dec % 16;
- buf[i++] = (rem < 10) ? rem + '0' : rem + '7';
- dec /= 16;
- }
- }
- int main(int argc, char **argv)
- {
- int i, j;
- for (i = 1; i < argc; ++i)
- {
- char buf[256] = {0};
- dec2hexarr(arg2int(argv[i]), buf);
- for (j = 0; j < 256; ++j)
- printf("%c", buf[j]);
- puts("");
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement