UTNianos

Versión completa: Consulta C++
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buenas chicos,

Estoy intentando aprender C++ y me surgió una duda con respecto a cual es la diferencia entre usar \n y std::endl.
Según entendí, la diferencia es que endl no limpia el buffer, entonces, las dos instrucciones siguientes serían equivalentes:


std::cout << "Linea de prueba 1" << std::endl;


std::cout << "Linea de prueba 2\n" << std::flush;


Hay alguna forma (Capaz esté diciendo una boludez), de poder 'ver' los valores del buffer en un momento determinado? Para ver los efectos que hace cada instrucción?

Muchas gracias.
Un saludo.
Segun lo poco de sé, no existe ninguna función que te permita ver los valores del buffer.

Saludos.
Y ajeno a C++, no habría alguna manera de poder verlo?

Gracias por responder.
Un saludo.
Es que no creo que deba interesarte eso. Supongo que debuggeando tu programa de algún modo muy obscuro lo podrás averiguar, pero no deberías intentarlo siquiera - debería ser transparente para vos. Son temas internos de la implementación (supongo que será una combinación entre sistema operativo, compilador y drivers los que determinen cómo se resuelve esto) de los que no deberías preocuparte.
1)

Si la hay. Pero no es forma directa. Es atravez de algun IDE, por ejemplo, el visual studio te permite ver la informacion de memoria en tiempo de debugeo, obviamente poniendo un break point...

Todo es memomoria, y el el uso del cout es un simple manejo de streams de un nivel un poco mas alto...

2) No se si esta correcto, pero el cout, aparte de hacer eso que decis, deberia hacer un /r/n necesitas un retorno de carro y un salto de linea. (Ojo, si no le pifio)...

ah si, si te queres aventurar un poco mas y estas sobre windows, podrias investigar de la API de Windows por ejemplo

WriteProcessMemory

ReadProcessMemory

VirtualAllocEx

y de mas alto nivel tenes por ejemplo

WriteConsoleOutput



Ahi te tire como pa que averigues ....
Depende que es lo que queiras hacer obviamente...
URLs de referencia