Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2016, 16:21   #11
brownb
Форумчанин
 
Регистрация: 16.10.2016
Сообщений: 157
По умолчанию

Цитата:
Сообщение от Kotofff Посмотреть сообщение
Какую версию Delphi используете ?
Просто эта ваша ошибка компиляции возникла из-за этого ...
XE7
brownb вне форума Ответить с цитированием
Старый 24.10.2016, 21:05   #12
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
Подмигивание

Я конечно извиняюсь...но зачем вам XE7 ?
Там ведь все по-другому...

Читайте 8-й пост Arigato : http://www.programmersforum.ru/showthread.php?t=240021
Читайте 4-й пост Квэнди : http://www.programmersforum.ru/showthread.php?t=59904

Да и вот вам "настольная книга" по вашему XE7:
http://docwiki.embarcadero.com/Libra.../en/System.Pos
... там есть поиск ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 24.10.2016, 21:10   #13
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

По-другому чем где?
Зачем использовать Дельфи 15-летней давности?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 24.10.2016, 22:18   #14
kropotkina-alice
Форумчанин
 
Аватар для kropotkina-alice
 
Регистрация: 27.10.2014
Сообщений: 594
По умолчанию

Цитата:
Сообщение от Kotofff Посмотреть сообщение
Какую версию Delphi используете ?
Просто эта ваша ошибка компиляции возникла из-за этого ...
Судя по ошибкам, это ХЕ.
У меня ее нет, поэтому и отошла в сторону
kropotkina-alice вне форума Ответить с цитированием
Старый 25.10.2016, 10:42   #15
7in
(aka Jin X) !RTFM!
Форумчанин
 
Аватар для 7in
 
Регистрация: 14.12.2014
Сообщений: 295
По умолчанию

brownb, странное поведение компилятора, честно говоря.
Вероятно, проблема с расхождением типов строк host и Match[i], компилятор не знает какой из вариантов функции Pos ему использовать. Хотя всё равно странно, должен преобразовывать автоматом. Но раз ошибка есть, то варианты следующие:
1. Перекомпилировать regexpr.pas (возможно, он откомпилен старой версией Delphi)
2. Сделать преобразование типов: Pos(host, String(reg.Match[2]))

Использовать старые версии Delphi (например, 7 или 2007) иногда есть смысл. Во-первых, программы получаются значительно меньшего размера (правда, сегодня это не так критично), во-вторых, при работе с UnicodeString есть свои особенности, которые не всегда могут быть удобны.
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
7in вне форума Ответить с цитированием
Старый 25.10.2016, 10:59   #16
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от 7in Посмотреть сообщение
при работе с UnicodeString есть свои особенности, которые не всегда могут быть удобны.
Ну там же есть AnsiString и т.п. если надо.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 25.10.2016, 11:06   #17
7in
(aka Jin X) !RTFM!
Форумчанин
 
Аватар для 7in
 
Регистрация: 14.12.2014
Сообщений: 295
По умолчанию

Код:
{$APPTYPE CONSOLE}
var S: AnsiString;
begin
  ReadLn(S);
  WriteLn(S);
  ReadLn;
end.
Попробуй запустить это из XE2+ и ввести строку по-русски.
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
7in вне форума Ответить с цитированием
Старый 25.10.2016, 11:09   #18
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Так в консоли винды вообще сложно с не английскими символами, причем тут ХЕ2
Надо вызывать всякие SetConsoleCP, setlocale и т.п.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 25.10.2016, 12:11   #19
7in
(aka Jin X) !RTFM!
Форумчанин
 
Аватар для 7in
 
Регистрация: 14.12.2014
Сообщений: 295
По умолчанию

Да это понятно, что всё решается одним вызовом SetConsoleCP, это пример просто
p.s. XE2 при том, что начиная с него codepage по умолчанию 866.
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
7in вне форума Ответить с цитированием
Старый 25.10.2016, 12:13   #20
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А до ХЕ2? А если запустить на винде с не русской локалью?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать функцию «Факториал» и программу, использующую эту функцию для вывода таблицы факториалов. Rufer Помощь студентам 1 20.06.2016 12:53
Как переписать функцию на питоне в С# pdesyatnyk Помощь студентам 3 21.12.2015 18:11
Что за функция (помогите опознать функцию или переписать) flesyyykkk Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 17.01.2014 17:04
[Delphi]Переписать программу использовав функцию just4smth Помощь студентам 4 16.10.2011 08:45