У меня есть большой файл с действительными числами, и я должен прочитать их в двойные числа как можно быстрее.
Я могу выбрать формат файла сам (1 номер в строке или несколько, например)
пытался scanf
Вроде медленно, пробовал gets(s)
и затем синтаксический анализ удваивает себя, это дает примерно в то же время.
Есть ли более быстрый способ?
Попробуйте прочитать из сырых бинарных файлов. Это самый быстрый.
пример: если вы хотите заполнить 1000 значений для двух массивов x
а также y
тогда данные в двоичном файле должны содержать значения x из интервала 0-1000 и значения y из интервала 1000-2000. Команда fread
, Не забывайте, что размер вашего элемента здесь составляет 64 бита = 8 байт для типа double
,
Других решений пока нет …