#define _IS_DIG 2 /* is digit indicator */
extern char _Cdecl _ctype[]; /* Character type array */
#define isdigit(n) (_ctype[(n) + 1] & _IS_DIG)
这是C语言头文件中的有关说明。
如果n是数字的ASCII,则_ctype[(n) + 1]值为2
顺便说些其它的:
如果n是大写字母的ASCII,则_ctype[(n) + 1]值为8
如果n是小写字母的ASCII,则_ctype[(n) + 1]值为4
这样结果就很明显了吧。