Arioch1
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору > вот здесь for c in ['А'..'Я'] происходит попытка проверить, не входит ли двубайтовая переменная в множество однобайтовых элементов чё, правда ??? попытка проверить, для каждого значения c ? Вот то есть так с и пробегает 65536 разных значений и каждое из них проверяется ? > как двубайтовая и имеет максимальный размер 65536 Кстати, это уже трёхбайтовая будет. Типичная программиcтская ошибка "промахнулся на один и не заметил, как попортил память" ;-P Я от ужаса даже CPU Window открыл. Фффух... нет там никаких проверок. Сколько в множестве есть элементов - столько переменная и пробегает, ни больше, ни меньше. Никаких холостых пробегов, когда у перемeнной значение есть, а "тело цикла не выполняется" и в помине нет. А если бы с какого-то перепугу и были - не я же их делаю, а компилятор. К нему советы и обращайте. Или вы мне советуете "in" внутри цикла на функцию заменить ? И как же писать надо, for CharInSet(c, ['A'..'Я']) do ... - так что ли вы предлагаете проверять ? > И контроль пределов диапазона да ну ? и как же этот код тогда без единой ошибки или предупреждения печатает буквы ЗА ПРЕДЕЛАМИ ДИАПАЗОНА русского алфавита ? где же тут "контроль выполняет" ? > за что ему отдельное спасибо. отдельное спасибо отдельно занесено в QC > что с объявлена как массив однобайтных символов Ух ты! и сколько индексов у этого массива? Бррр... Такие же фантазии, как проверка вхождения в множество. PS: вы хоть компилировать это пробовали, прежде чем о массивах рассуждать ? Добавлено: Цитата: К тому же общая установка полей для платформы совершенно не означает, что они поля установились для release и debug этой платформы. | Это да. "Общие" настройки не наследуются и в EXE не попадают Но склеиваться вроде не склеиваются. И в Хелпе написано что только номер версии ставится для всех платформ сразу. | Всего записей: 904 | Зарегистр. 03-03-2010 | Отправлено: 23:22 08-11-2011 | Исправлено: Arioch1, 23:42 08-11-2011 |
|