diff options
Diffstat (limited to 'test/stdlib/teststrtol.c')
-rw-r--r-- | test/stdlib/teststrtol.c | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/test/stdlib/teststrtol.c b/test/stdlib/teststrtol.c deleted file mode 100644 index 5b43a9b0c..000000000 --- a/test/stdlib/teststrtol.c +++ /dev/null @@ -1,109 +0,0 @@ - -#include <stdlib.h> -#include <stdio.h> - - -const char *strings[]={ - /* some simple stuff */ - "0", "1", "10", - "100", "1000", "10000", "100000", "1000000", - "10000000", "100000000", "1000000000", - - /* negative */ - "-0", "-1", "-10", - "-100", "-1000", "-10000", "-100000", "-1000000", - "-10000000", "-100000000", "-1000000000", - - /* test base>10 */ - "a", "b", "f", "g", "z", - - /* test hex */ - "0x0", "0x1", "0xa", "0xf", "0x10", - - /* test octal */ - "00", "01", "07", "08", "0a", "010", - - /* other */ - "0x8000000", - - /* check overflow cases: (for 32 bit) */ - "2147483645", - "2147483646", - "2147483647", - "2147483648", - "2147483649", - "-2147483645", - "-2147483646", - "-2147483647", - "-2147483648", - "-2147483649", - "4294967293", - "4294967294", - "4294967295", - "4294967296", - "4294967297", - "-4294967293", - "-4294967294", - "-4294967295", - "-4294967296", - "-4294967297", - - /* bad input tests */ - "", - "00", - "0x", - "0x0", - "-", - "+", - " ", - " -", - " - 0", -}; -int n_tests=sizeof(strings)/sizeof(strings[0]); - -void do_test(int base); -void do_utest(int base); - -int main(int argc,char *argv[]) -{ - do_test(0); - do_test(8); - do_test(10); - do_test(16); - do_test(36); - - do_utest(0); - do_utest(8); - do_utest(10); - do_utest(16); - do_utest(36); - - return 0; -} - -void do_test(int base) -{ - int i; - long n; - char *endptr; - - for(i=0;i<n_tests;i++){ - n=strtol(strings[i],&endptr,base); - printf("strtol(\"%s\",%d) len=%lu res=%ld\n", - strings[i],base,(unsigned long)(endptr-strings[i]),n); - } -} - -void do_utest(int base) -{ - int i; - unsigned long n; - char *endptr; - - for(i=0;i<n_tests;i++){ - n=strtoul(strings[i],&endptr,base); - printf("strtoul(\"%s\",%d) len=%lu res=%lu\n", - strings[i],base,(unsigned long)(endptr-strings[i]),n); - } -} - |