Here is a small example of StrToInt. Note that initializing string with "123" is equivalent to setting the individual elements.
int value;
char string[10] = "123";
StrToInt(string, &value);
printf("%d", value);
There were two problems with the code you posted.
1. You were using strl (essentially a pointer to an unsigned) as the parameter to StrToInt, while it was expecting a pointer to an integer. This would have worked (for positive values) if you had passed *strl to printf, but is still strictly incorrect.
2. You were passing the address of the first element of an unsigned integer to printf when it was expecting an integer value; so, it was actually printing the address of the variable as an integer. If you had passed *strl here instead, you would have seen the output you had expected.
Hope this helps,
-alex