Найдено 13 результатов

serge#LVL
14.12.2018 13:42:43
Форум: Lazarus
Тема: аналог static в lazarus
Ответы: 9
Просмотры: 7535

Re: аналог static в lazarus

SSerge,
спасибо, за подсказку.
Но разве можно константу изменять или такое объявление const d: integer = 0 не является константой?

Добавлено спустя 16 минут 41 секунду:
Типизированные константы.
Могут быть изменены, если {$WriteableConst On}
serge#LVL
13.12.2018 21:32:53
Форум: Lazarus
Тема: аналог static в lazarus
Ответы: 9
Просмотры: 7535

аналог static в lazarus

Доброго времени суток!

В Си есть переменные класса памяти static, которые инициируются один раз и сохраняют свое значение после выхода из функции. Вопрос: есть аналог в лазарус или использовать глобальные переменные?
serge#LVL
14.04.2017 21:26:01
Форум: Общее
Тема: непонятки с Trunc()
Ответы: 2
Просмотры: 10804

Re: непонятки с Trunc()

vitaly_l, спасибо!

Я разобрался. Проблема была совсем не в trunc. И условие работает нормально. Индекс массива увеличивался ниже этого кода, а я в процессе отладки это сразу не увидел :oops: . Прицепился к условию и не смог с мертвой точки сдвинуться.
serge#LVL
14.04.2017 19:23:01
Форум: Общее
Тема: непонятки с Trunc()
Ответы: 2
Просмотры: 10804

непонятки с Trunc()

Здравствуйте!

Помогите разобраться с проблемой.
Есть часть кода, где вычисляется индекс динамического массива, а потом осуществляется его проверка. Если индекс больше или равен размерности массива, то ему присваивается последний индекс массива.

jt0:=trunc((latT[0,it]-lat[j,i&#93 ...
serge#LVL
01.09.2016 13:25:21
Форум: Free Pascal Compiler
Тема: Решено: Не могу избавится от пробела в строке
Ответы: 17
Просмотры: 18504

Re: Не могу избавится от пробела в строке

особо не работал с utf8, поэтому может не в тему скажу. Попробуйте TrimRightSet или TrimSet. С AnsiString правые пробелы и любые символы можно подавить с помощью SetLength(), указав новую длину строки без "правых хвостов".
Не понял, что такое "неудобные символы", но может поэтому trim не работает ...
serge#LVL
31.08.2016 21:32:16
Форум: Lazarus
Тема: подстановка вводимого текста
Ответы: 5
Просмотры: 4704

Re: подстановка вводимого текста

Ctrl+J предлагает конструкции. Набираете, например, f (или более конкретно for) и выбираете из списка варианты: for без begin end; или с ним. насколько помню в делфи было такое.
serge#LVL
30.08.2016 21:37:42
Форум: Общее
Тема: Теория. Работа с размерностями знач. в переменных программ
Ответы: 34
Просмотры: 60389

Re: Теория. Работа с размерностями знач. в переменных програ

Как говорил Лекс Айрин : через коэффициенты.
Вот пример перевода угловых координат. Если единицы inp_units и out_units переводятся, то выдается коэффициент пересчета, если нет, то (-1).
Естественно данные описываются структурой: величина, размерность.
В примере 6 единиц: радианы, футы, метры ...
serge#LVL
23.08.2016 15:49:22
Форум: Lazarus
Тема: странности с DecimalSeparator
Ответы: 0
Просмотры: 2757

странности с DecimalSeparator

Всем добрый день!

На intuit в курсе "Программирование на Lazarus" приводится функция для проверки ввода вещественных чисел. Я только заменил в ней DecimalSeaparator на DefaultFormatSettings.DecimalSeparator.
Цифры, знак, bechspace, десятичный разделитель - разрешаются, остальные символы ...
serge#LVL
20.08.2016 09:56:33
Форум: Lazarus
Тема: Не могу разобраться с WideCompareText
Ответы: 8
Просмотры: 6505

Re: Не могу разобраться с WideCompareText

По-моему, у вас ошибка в выражении
Result:= WideCompareText(UTF8ToSys(s), UTF8ToSys(d));
if not Result=(0) then break
Вообще, break используется при выходе из циклов for, while, repeat. if ... then - это не цикл
сделайте просто
if Result=0 then
Потом, возможно, у вас неявное преобразование ...
serge#LVL
19.08.2016 21:34:17
Форум: Обучение Free Pascal
Тема: Помощь с Exception SIGSEGV
Ответы: 4
Просмотры: 14041

Re: Помощь с Exception SIGSEGV

Дож, Спасибо большое!

Теперь все понятно. Попробую все 3 варианта в познавательных целях.

Добавлено:

Реализовал 1-ый и 3-ий вариант. Код 1-го варианта значительно компактнее и интереснее. 3-ий вариант близок к моему замыслу.

Вопрос решен.
serge#LVL
19.08.2016 20:54:01
Форум: Обучение Free Pascal
Тема: Помощь с Exception SIGSEGV
Ответы: 4
Просмотры: 14041

Re: Помощь с Exception SIGSEGV

Дож , спасибо за ответ!

Вообще я несилен в указателях, идею понимаю, но использовать не получается. Эти строки кода у меня тоже вызывали сомнение, потому что в таком объявлении происходит копирование адреса ArByte, а не его значений, а нужно было именно скопировать значения.

По задумке хотелось ...
serge#LVL
19.08.2016 15:26:37
Форум: Обучение Free Pascal
Тема: сделать копию массива
Ответы: 3
Просмотры: 12514

Re: сделать копию массива

Есть одномерный массив символов(где-то 25 элементов), теперь этот массив надо скопировать (а=в) в цикле(от 1 до 255), в зависимости от условия случайного числа(чётное копируем, нечётное не копируем)..., т.е. я заранее не знаю сколько будет этих массивов, чтоб заранее их описать.. как можно это ...
serge#LVL
19.08.2016 13:09:09
Форум: Обучение Free Pascal
Тема: Помощь с Exception SIGSEGV
Ответы: 4
Просмотры: 14041

Помощь с Exception SIGSEGV

Добрый день!
Помогите разобраться с причиной возникновения ошибки Exception SIGSEGV при исполнении программы.

Задача простая: считать из файлов таблицу х, y, z для дальнейших действий. х, y, z хранятся в двух файлах каждый: в бинарном *.img и метафайле *.hdr. Метафайл хранит размерность массива ...