tienes que limpiar el buffer de salida.
si haces un programilla tipo:
bucle
imprime #
sleep(x)
lo que te esperas que haga es que escriba # espere x segundos escriba otro # .... etc pero no hace eso, espera x segundos y escribe todo de golpe.
la soluccion es escribir una de estas cosas antes de sleep()
cout.flush();
o
cout << " #" << flush;
ejemplo
bucle
imprime #
cout.flush();
sleep(x);