endl vs \ n в C ++

Опубликовано: 1 Января, 2022

Хотя кажется, что они оба делают одно и то же, между ними есть небольшая разница.

 cout << endl : вставляет новую строку и очищает поток

cout << " n" : вставляет только новую строку.

Следовательно,
cout << endl;
можно сказать эквивалентно
cout << ' n' << flush;
Таким образом, cout << « n» кажется более производительным, чем cout << endl; если не требуется промывка потока.
Некоторые другие различия между endl и n:

  1. endl - манипулятор, а n - символ.
  2. endl не занимает никакой памяти, тогда как n является символом, поэтому он занимает 1 байт памяти.
  3. n, являющийся символом, может быть сохранен в строке (по-прежнему будет передавать его конкретное значение разрыва строки), в то время как endl является ключевым словом и не будет указывать какое-либо значение при сохранении в строке.
  4. Мы не можем писать endl между двойными кавычками, в то время как мы можем писать n между двойными кавычками, например
    cout << « n»; это верно, но cout << "endl"; неправильно.
  5. Мы можем использовать n как в C, так и в C ++, но endl поддерживается только C ++, а не языком C.

Ссылка:
http://stackoverflow.com/questions/213907/c-stdendl-vs-n

Автор статьи - Акшат Саксена . Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.

Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
C++ C