Pessoal como eu faço para determinar a posição de uma determinada escrita dentro do console ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Pessoal como eu faço para determinar a posição de uma determinada escrita dentro do console ?
Oi Lucas,
O printf é buffered. Isso significa que quando você chama-lo, não será imediatamente impresso. Em vez disso, ele armazenará o que você disse para imprimir e imprimirá automaticamente quando houver texto suficiente armazenado no buffer.
Se você usar um \n após o seu comando print, ele imprimirá automaticamente todo o buffer (é por isso que a última chamada para printf imprime tudo). Para o seu caso, você pode querer usar um flush manual com fflush:
printf("Enter int: "); fflush(stdout);
scanf("%d",&i);
printf("Hello %d\n",i);Tecnicamente, é o stdout que é armazenado em buffer, mas é mais fácil pensar nisso como printf sendo armazenado em buffer neste momento.
Eu quero fazer uma tela dinâmica onde mostra o tempo e os pontos do jogador, no entanto eu quero posiciona-las no canto superior direito da tela. eu não vou colocar espaço até ficar na posição que quero. Não há nada na linguagem C onde eu possa posicionar dentro do console onde eu quero que a escrita comece ? Essa é a dúvida. Posicionar o cursor da escrita do printf.
A linguagem C em si não tem noção de uma tela com um cursor. Você terá que usar algum tipo de biblioteca que forneça esse suporte. curses é a biblioteca mais conhecida e amplamente disponível para controle de terminal.