First of all, you could get an help from C++ Shell: you will receive 4 warnings.
Try to fix those warnings and then use a debugger to see what your code is doing.
It it is not a mere exercise, you could use the class std::istringstream.
Who said you couldn't? Your question doesn't relate to the text you quoted in any way.
If you define an array to have N elements, then the first element has index 0, and the last has index (N-1). If you try and use N as the index, you have gone past the end of your array.
I actually wrote a function for this that mathematically converts strings to ints using a formula I painstakingly derived. If you convert the hex to base-10, it shouldn't be too difficult to convert each digit to it's integer equivilant.