Вероятно, потому, что 1 символ - это 1 байт (ну, или 2 для UNICODE). А одно число - это 4 байта. Привычка экономить на всем
А как же ноль в конце строки? для юникода будут те же 4 байта. :-)
А с числами обычно быстрее работается. Но в данном случае разница в пару тактов процессора.