1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#include <stdio.h> #include <stdlib.h> int main() { char str[7] = "018912"; unsigned char *ptr; long ret; ret = strtol(str, &ptr, 0); if (*ptr != str[6]) { printf("Return value %d\n%s: Invalid octal due to %s",ret,str,ptr); } return(0); }
1 2
Return value 1 018912: Invalid octal due to 8912