Os dois servem para indicar uma quebra de linha. Para um cout padrão não tem diferença. Mas o endl pode ser usado com diversas streams. O cout é um objeto do tipo ostream. O endl além de colocar um quebra de linha, irá esvaziar o cachê da stream, mandando tudo para a saída. O cout é configurado para não armazenar os dados no cachê, o que entra no fluxo vai para a saída. Então o endl não tem diferença para o '\n'. Quando você for trabalhar com streams, pode ser útil usar um endl no lugar do '\n'.
Answers & Comments
Verified answer
Os dois servem para indicar uma quebra de linha. Para um cout padrão não tem diferença. Mas o endl pode ser usado com diversas streams. O cout é um objeto do tipo ostream. O endl além de colocar um quebra de linha, irá esvaziar o cachê da stream, mandando tudo para a saída. O cout é configurado para não armazenar os dados no cachê, o que entra no fluxo vai para a saída. Então o endl não tem diferença para o '\n'. Quando você for trabalhar com streams, pode ser útil usar um endl no lugar do '\n'.
Ambos fazem a mesma coisa. O \n é uma sintaxe do C e endl do C++. Porem como o C++ aceita a maioria dos comandos em C...
eu sei, acesse http://downmania.com.br,/ na categoria C++ tem coisa boa lá.
Veja bem \N quebra a linha, ENDL indica que a frase acabou, ou seja encerra a função cout