Цитата(RED_BULLok @ May 6 2008, 15:21)

Теперь вопрос: что так жестоко хавает память ? И есть какие соображения по устранению проблемы?
Ну, и что тут не понятно? Вы сами, по-моему, всё объяснили своими примерами. Память едят процедуры, подключаемые из стандартных библиотек. Давно известно, что процедуры типа sprintf, scanf и еже с ними очень прожорливы до памити. Обычно, таких процедур несколько: разные возможности (только int, int+long, int+long+float) и, соответственно, разная потребность в памяти... Ну, и сдвиг (скорее всего не байта) - это тоже некая процедура, которая тоже отжирает память...
Ну, собственно, какие могут быть соображения? Не пользоваться стандартными printf и им подобными - обычно, можно написать свою более легкую функцию. Если памяти не хватает - попробовать включить оптимизацию по памяти...