Используйте fprintf для потока памяти - PullRequest
1 голос
/ 09 июля 2010

У меня есть метод vc ++, который использует fprintf для записи значений в файл на жестком диске.Я хочу изменить этот метод, чтобы вместо записи значений на диск я возвращал указатель на данные.

Я заранее знаю размер, который мне нужно выделить.Есть ли способ передать поток памяти или беззнаковый указатель на символ в fprintf?

спасибо

Ответы [ 2 ]

4 голосов
/ 09 июля 2010

Вы можете использовать sprintf или, что еще лучше, snprintf [ _snprintf / snprintf_s для VC ++] (как указал Майкл Барр и как отмечено в разделе «Примечания» ссылки на sprintf).

И, поскольку он помечен как C ++, лучше использовать std :: stringstream .

1 голос
/ 09 июля 2010

Если вам нужна возможность беспрепятственного переключения между ними, возможно, с помощью параметра, переданного в назначении цели для записи, вам может быть лучше выполнить ввод-вывод с использованием потоков C ++, а не старых вызовов C printf.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...