Проблема заключается в следующем: если я fwritе-ом пишу матрицу в бинарный файл 2900х2900 и выше, то создается файл нужного размера, но весь забитый нулями.
Сколько fwrite может записать за раз в файл данных?
И возможно ли это обойти?
Здравствуйте, Igore, Вы писали:
I>Проблема заключается в следующем: если я fwritе-ом пишу матрицу в бинарный файл 2900х2900 и выше, то создается файл нужного размера, но весь забитый нулями. I>Сколько fwrite может записать за раз в файл данных? I>И возможно ли это обойти?
Скорее всего, функция здесь нипричем. Лучше покажи текст, как пишешь — яснее станет, поченму.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Не, а зачем тебе писать сразу 2900х2900? Выводи построчно: напиши цикл от 1 до 2900 и выводи 2900 строк матрицы.
Файл записывается на сервере, и если писать построчно то слишком много времени занимается на пересылку по сети. Проверено .
И еще один вопрос никогда не требовалось устонавливать и работать с PVM? http://www.dvo.ru/bbc/pvm.html
Вопрос остался в силе сколько за раз может записать fwrite 64 Mb?
Здравствуйте, Igore, Вы писали:
I>Файл записывается на сервере, и если писать построчно то слишком много времени занимается на пересылку по сети. Проверено .
Тогда да. И это похоже, действительно ограничение, но может, не fwrite, а буферов каких-нибудь?
Или просто ограничение оси.
А не пробовал низкоуровневым write пользоваться? I>И еще один вопрос никогда не требовалось устонавливать и работать с PVM? I>http://www.dvo.ru/bbc/pvm.html I>Вопрос остался в силе сколько за раз может записать fwrite 64 Mb?
Спасибо за классную ссылку. Нет этим не приходилось.
А попробуй разбить по 32 метра. Или по 50. Тогда и прям подряд в программе напиши несколько fwrite.
Их же немного будет и время не такое большое получится, как при использовании цикла.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
у меня похожая проблема с mingw gcc.
только при чтении fread считывает вроде бы без ошибки, но буффер забит нулями начиная с определенного места.
при замене fread на _lread или компиляции на msvc все нормально.