Ir ao conteúdo
  • Cadastre-se
Lobarinhas

Problemas com dev c++

Recommended Posts

Ola galera!
Estava fazendo um programa para facul ... onde nele tenho que mostar cerca de 60 linhas
O problema é que, quando eu compilo, ele só me mostra as ultimas 15 linhas .... tipo, só consigo ver do 45 em diante, não consigo ver as informações acima dele! Ele não me deixa subir o console ou rolar scroll .... alguma luz ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema não é do dev se não que é do buffer da janela do prompt, que vem configurado de forma que o programa elimina letras antigas por considera-las desnecessárias permanecer em memória, você teria que aumentar esse buffer.


Siga os passos desse vídeo para alterar o buffer, é para windows 10 porém é a mesma coisa em xp, vista, 7, 8... , quando tiver na janela do CMD faça a mesma coisa que nesse video, porém os valores podem ser outros conforme sua necessidade.

http://www.isunshare.com/windows-10/change-screen-buffer-size-of-cmd-in-windows-10.html

adicionado 37 minutos depois
 
 

Se você quiser arrumar isso através de código basta você usar essa pequena "funçãozinha" aqui(só no windows) e fará tudo por você automaticamente.
 

#include <stdio.h>
#include <windows.h> 

void SetWindow(int Width, int Height, int WidthBuffer, int HeightBuffer) { 
    struct _COORD coord; 
    coord.X = WidthBuffer; 
    coord.Y = HeightBuffer; 

    struct _SMALL_RECT Rect; 
    Rect.Top = 0; 
    Rect.Left = 0; 
    Rect.Bottom = Height - 1; 
    Rect.Right = Width - 1; 

    HANDLE Handle = GetStdHandle(STD_OUTPUT_HANDLE);      // Get Handle 
    SetConsoleScreenBufferSize(Handle, coord);            // Set Buffer Size 
    SetConsoleWindowInfo(Handle, TRUE, &Rect);            // Set Window Size 
}


int main(int argc, char *argv[]) {     
    int larguraJanela        = 80;                         //A largura da janela
    int alturaJanela         = 25;                        //A altura da janela
    int tamanhoLarguraBuffer = larguraJanela + 200;      //A largura do buffer
    int tamanhoAlturaBuffer  = alturaJanela  + 1000;    //A altura do buffer

    //função que muda tamanho da janela e do buffer da janela
    SetWindow(larguraJanela,alturaJanela,tamanhoLarguraBuffer,tamanhoAlturaBuffer);
    
    //seu código aqui embaixo
    
    return 0;
}

 

Se tiver duvida pergunte

 

 

 

 

Editado por vangodp

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×