|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.02.2007, 21:58 | #1 |
Регистрация: 27.02.2007
Сообщений: 3
|
Работа с типом Record
В ходе написания программы столкнулся с необходимостью
разбиения строки в компоненте Memo на 3 части и записи каждой из них в отдельное поле записи и контролем содержимого поля Пример:в Memo задается строка 'ADDWF f,d' (f и d определенные числа) ранее был объявлен массив AsmCode: array[0..1023] of record Command: string[6]; op1:Word; op2:Word; Обработчик при событии 'Button1Click' должен сохранить строку до запятой в поле Command, первый операнд в поле op1, а второй в поле op2 При этом нужна проверка 1.в поле Command известная и синтаксически правильная команда (наверное это реализовывается так if AsmCode.Command[i]<>'имя команды1' and 'имя команды2' и т.д.) хотя я не уверен в своей правоте 2.0<f<31, 3.d либо 1 либо 0. Команд будет 3 типа 1. Команда с 2-мя операндами 'ADDWF f,d' 2. Команда с 1-м операндом 'CALL k' 3. команда без операндов 'NOP' Соответствено для команд вида 2 и 3 необходима проверка количества операндов, т.е. чтобы не написали NOP с операндами Собственно прошу помочь с кодом =) Последний раз редактировалось TheNovice; 28.02.2007 в 10:49. |
27.02.2007, 23:00 | #2 |
Павел Сергеевич
Форумчанин
Регистрация: 05.11.2006
Сообщений: 665
|
Ничего сложного не вижу, но возникает вопрос: почему строковая переменная имеет длину 6?
Код:
Познавая других, мы познаем себя.
С'est la vie... Последний раз редактировалось SuperVisor; 28.02.2007 в 13:33. |
27.02.2007, 23:14 | #3 |
Регистрация: 27.02.2007
Сообщений: 3
|
команд с числом сиволов >6 нет, заранее спасибо.
Последний раз редактировалось TheNovice; 27.02.2007 в 23:16. |
28.02.2007, 13:34 | #4 |
Павел Сергеевич
Форумчанин
Регистрация: 05.11.2006
Сообщений: 665
|
Поскольку были добавлены условия - код неполный. Проверку лучше организовать по командам посредством CompareStrings и отталкиваться от него по операндам.
Будут вопросы - пиши.
Познавая других, мы познаем себя.
С'est la vie... |
28.02.2007, 17:52 | #5 | |
Регистрация: 27.02.2007
Сообщений: 3
|
Цитата:
Огромное спасибо за помошь Последний раз редактировалось TheNovice; 01.03.2007 в 00:56. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
DBGrid и поля с типом MEMO | doncova1 | БД в Delphi | 4 | 27.03.2009 01:20 |
как записать record в файл | Kn793 | Общие вопросы Delphi | 5 | 01.08.2008 08:10 |
record/file | potion | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 10.05.2008 20:15 |
Вопрос по поводу записей (Record) | werser | Помощь студентам | 13 | 05.09.2007 23:11 |
Ассоциирование программы с типом файлов | ZhekON | Общие вопросы Delphi | 7 | 01.06.2007 18:33 |