Поменяйте строчки местами, сначала модифицируете строку, потом получаете адрес.
Но почему если убрать {H+} (или поставить {H-}), то ошибка исчезает?
Добавлено спустя 6 минут 11 секунд:
3) сработал механизм copy-on-write,
Этого мне не надо. Как сделать так, чтобы я менял строку s, и по всем ...
Найдено 7 результатов
- 13.03.2013 13:38:22
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
- 12.03.2013 19:18:17
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
Re: Чтение и парсинг больших текстовых файлов
Позвольте не согласиться.
Странно. Похоже, где-то с какими-то ключами компиляции в Лазарусе не так. В консоли действительно работает как в дельфи.
Добавлено спустя 10 минут 19 секунд:
Результат работы зависит от наличия или отсутствия ключа компилятора {$H+}
Если ключ есть, то дает ошибку ...
Странно. Похоже, где-то с какими-то ключами компиляции в Лазарусе не так. В консоли действительно работает как в дельфи.
Добавлено спустя 10 минут 19 секунд:
Результат работы зависит от наличия или отсутствия ключа компилятора {$H+}
Если ключ есть, то дает ошибку ...
- 12.03.2013 17:54:50
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
Re: Чтение и парсинг больших текстовых файлов
IvanS ну в начальном сообщении было сказано что файл содержит вещественные числа разделённые пробелами и табами, а сейчас вы приводите пример - тут каша из выражений (?), вещественных чисел в обычном представлении и научного представления вещественных чисел. тут конечно TParser в изначальном виде ...
- 11.03.2013 20:11:31
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
Re: Чтение и парсинг больших текстовых файлов
Я бы использовал стандартный TParser и не парился бы с производительностью.
Пример файла:
This is first section
1E-5 2.3E-5 3.5E-4
/
This is second section
2*3 3*2 3*5 4*3 /
--This is comment
/ This is comment also
This is third section
2*3E-3 3*2.034 3*-5.03E-5 4*-3.045e4 / may be comments ...
Пример файла:
This is first section
1E-5 2.3E-5 3.5E-4
/
This is second section
2*3 3*2 3*5 4*3 /
--This is comment
/ This is comment also
This is third section
2*3E-3 3*2.034 3*-5.03E-5 4*-3.045e4 / may be comments ...
- 12.02.2013 13:39:06
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
Re: Чтение и парсинг больших текстовых файлов
P.S. Жаль что, как я понял, такой способ не очень-то подойдет.
В текстовом файле еще комментарии понатыканы.
Ну тогда только последовательная обработка символ за символом. Что-то типа этого:
var x:char;
mode:integer; // текущей режим: 0 - разделители, 1 - число, 2 - паскалевские ...
В текстовом файле еще комментарии понатыканы.
Ну тогда только последовательная обработка символ за символом. Что-то типа этого:
var x:char;
mode:integer; // текущей режим: 0 - разделители, 1 - число, 2 - паскалевские ...
- 10.02.2013 12:59:01
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
Re: Чтение и парсинг больших текстовых файлов
IvanS
А Вы не пробовали читать числа из файла просто ( Read ()), без всяких преобразований, поисков и т.п. причуд научной мысли?
Вопрос не в чтении, а в парсинге. На самом деле в строке могут оказаться не только числа и пробелы, но и "комментарии", которые нужно отделять. В общем, там парсинг ...
А Вы не пробовали читать числа из файла просто ( Read ()), без всяких преобразований, поисков и т.п. причуд научной мысли?
Вопрос не в чтении, а в парсинге. На самом деле в строке могут оказаться не только числа и пробелы, но и "комментарии", которые нужно отделять. В общем, там парсинг ...
- 10.02.2013 01:48:18
- Форум: Free Pascal Compiler
- Тема: Чтение и парсинг больших текстовых файлов
- Ответы: 54
- Просмотры: 44872
Чтение и парсинг больших текстовых файлов
Дано:
Текстовый файл, содержащий действительные числа, разделенные либо пробелами либо знаками табуляции (результаты расчета в стороннем научном ПО). Размер файла порядка 1 - 5 Гб.
Числовая информация разбита на строки, содержащие по нескольку чисел.
Задача:
Прочитать файл и получить массив array ...
Текстовый файл, содержащий действительные числа, разделенные либо пробелами либо знаками табуляции (результаты расчета в стороннем научном ПО). Размер файла порядка 1 - 5 Гб.
Числовая информация разбита на строки, содержащие по нескольку чисел.
Задача:
Прочитать файл и получить массив array ...
