質問です。

charで定義された変数を、
数字のみの列だけの時と、数字列+文字列or文字のみの列だけの時の、
2通りに判断する場合に使用する関数は何が適しているでしょうか?
 
最初はatoiを使おうと思ったのですが、
この場合、charの中身が、
(例として10が通るべき実数とします)
abc
a10
の時はエラーを返してくれるのですが
10
10a <も、正しいと判断してしまいます。
 
宜しければ御教授御願い致します。