Prototype de la fonction :
long int strtol (const char *nptr, char **endptr, int base);
nptr = chaine de caractère que tu veux transformer en int (par exempl "24533")
endptr = Si endptr n'est pas nul alors il devient le pointeur vers le premier caractère non valide. Exemple tu demandes à convertir 12343F3354 en base 10, strtol s'arrêtera à F et le mettrra dans endptr.
base = Base dans laquelle tu veux convertir ton char.
Dans ton cas, pour convertir une chaine str dans a, tu ferais : a = strtol(str,NULL,10).
Ou alors, tu peux mettre l'adresse d'un pointeur à la place de NULL. Si la conversion ne fonctionne pas, tu afficherais un message d'erreur avec le caractère qui a foiré.
Tout simplement.