endl vs \ n в C ++
Опубликовано: 1 Января, 2022
Хотя кажется, что они оба делают одно и то же, между ними есть небольшая разница.
cout << endl : вставляет новую строку и очищает поток cout << " n" : вставляет только новую строку.
Следовательно,
cout << endl;
можно сказать эквивалентно
cout << ' n' << flush;
Таким образом, cout << « n» кажется более производительным, чем cout << endl; если не требуется промывка потока.
Некоторые другие различия между endl и n:
- endl - манипулятор, а n - символ.
- endl не занимает никакой памяти, тогда как n является символом, поэтому он занимает 1 байт памяти.
- n, являющийся символом, может быть сохранен в строке (по-прежнему будет передавать его конкретное значение разрыва строки), в то время как endl является ключевым словом и не будет указывать какое-либо значение при сохранении в строке.
- Мы не можем писать endl между двойными кавычками, в то время как мы можем писать n между двойными кавычками, например
cout << « n»; это верно, но cout << "endl"; неправильно. - Мы можем использовать n как в C, так и в C ++, но endl поддерживается только C ++, а не языком C.
Ссылка:
http://stackoverflow.com/questions/213907/c-stdendl-vs-n
Автор статьи - Акшат Саксена . Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .