Почему std :: print занимает столько места?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Почему std :: print занимает столько места?

Сообщение Anonymous »

Я пытаюсь что-то понять о коде ниже, где я переключается между std :: cout и более новой std :: print .

Код: Выделить всё

#include 
#include 

int main()
{
for (int i{}; i != 3; ++i)
{
std::print("{0}\n", i);
// std::cout 
Даже при компиляции с оптимизацией (проверьте вывод ниже), исполняемый файл увеличивается на 1 МБ. Почему это так много для добавления печати? Старая std :: cout 
. Для меня это увеличение размера бинарника более чем на 10 раз.total 1.8M
-rwxr-xr-x 1 questioner questioner 53K May 26 18:59 cout_O3
-rwxr-xr-x 1 questioner questioner 1.1M May 26 19:00 print_O3
-rwxr-xr-x 1 questioner questioner 600K May 26 19:00 print
-rw-r--r-- 1 questioner questioner 183 May 26 19:00 print.cpp
-rwxr-xr-x 1 questioner questioner 93K May 26 19:00 cout

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.2 LTS
Release: 24.04
Codename: noble
< /code>
мои конфигурации: < /p>

Процессор: AMD Ryzen 9 5900x < /li>
Память: 32G < /li>
< /ul>

Подробнее здесь: https://stackoverflow.com/questions/796 ... much-space
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»