endl y \n parecen hacer lo mismo, pero hay una sutil diferencia entre ellos.
cout << endl inserta una nueva línea y vacía la secuencia (búfer de salida), mientras que cout << «\n» simplemente inserta una nueva línea.
Por lo tanto, cout << endl; se puede decir equivalente a cout << ‘\n’ << flush;
Algunas otras diferencias entre endl y \n son:
final |
\norte |
---|---|
Es un manipulador. | es un personaje |
No ocupa memoria. | Ocupa 1 byte de memoria ya que es un carácter. |
Es una palabra clave y no especificaría ningún significado cuando se almacena en una string. | Se puede almacenar en una string y seguirá transmitiendo su significado específico de salto de línea. |
No podemos escribir ‘endl’ entre comillas dobles. | Podemos escribir ‘\n’ entre comillas dobles como cout<<“\n”; |
Solo es compatible con C++. | Es compatible con C y C++. |
Sigue vaciando la cola en el búfer de salida durante todo el proceso. | Vacía el búfer de salida solo una vez al final del programa |
Nota: cout << “\n” se ve mejor en cuanto a rendimiento, pero en realidad cout << endl es mucho mejor en C++ ; Como no ocupa memoria y también si se requiere vaciar el flujo.
Ejemplo 1:
Podemos usar endl en C++ pero no en C. Así que endl funciona bien en C++ pero si usamos C, se ejecuta un error.
C++
#include <iostream> using namespace std; int main() { cout << "GFG!"<<endl; //We can use endl in C++ and it doesn't occupy any memory cout << "GFG!"; return 0; } //Code submitted by Susobhan AKhuli
C
#include <stdio.h> int main() { // code //We cann't use endl in C printf("GFG!",endl); //So it runs error printf("GFG!"); return 0; } //Code submitted by Susobhan AKhuli
Producción:
GFG! GFG!
Ejemplo 2:
Podemos usar «\n» tanto en C como en C++ pero ocupa 1 byte de memoria.
C++
#include <iostream> using namespace std; int main() { cout << "GFG!"<<"\n"; cout << "GFG!"; return 0; } //Code submitted by Susobhan AKhuli
C
#include <stdio.h> int main() { // code printf("GFG!\n"); printf("GFG!"); return 0; } //Code submitted by Susobhan AKhuli
Producción:
GFG! GFG!
Este artículo es una contribución de Akshat Saxena . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA