2015-06-22 4 views
4

Я использую Dev C++ v5.6.1 IDE для Windows7.Свойства окна консоли C++

Я написал код C, который содержит сотни строк, которые отображаются в виде вывода на экране.

Размер буфера консоли Windows невелик, и я не могу просмотреть исходные инструкции printf. Я попробовал переходить от опции «свойства», но это не помогло.

Где я могу найти вариант увеличения размера буфера окна консоли.

+0

Вы можете написать команду, если буфер заполнен -> пауза. Нажмите любую клавишу для непрерывного отображения. –

+0

Попробуйте это, возможно, это поможет ... int main() {system ("mode 128"); ...} – udit043

ответ

0

Как вы используете Windows, простой способ сделать это - это изменить размер окна консоли с помощью команды партии:
mode con: cols=150 lines=50. cols регулирует ширина, линии регулирует высота.

Вы можете позвонить в систему, чтобы установить размер консоли.
считается плохой, подробнее об этом here.

// This is considered bad, you shouldn't use system calls. 
system("mode con: cols=150 lines=50"); 

безопаснее способ сделать это, изменяет буфер и его размер с помощью функции, определенные в <windows.h>.

Вот небольшой пример, иллюстрирующий это:

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

int main(void) 
{ 
    SMALL_RECT rect; 
    COORD coord; 
    coord.X = 150; // Defining our X and 
    coord.Y = 50; // Y size for buffer. 

    rect.Top = 0; 
    rect.Left = 0; 
    rect.Bottom = coord.Y-1; // height for window 
    rect.Right = coord.X-1; // width for window 

    HANDLE hwnd = GetStdHandle(STD_OUTPUT_HANDLE); // get handle 
    SetConsoleScreenBufferSize(hwnd, coord);  // set buffer size 
    SetConsoleWindowInfo(hwnd, TRUE, &rect);  // set window size 

    printf("Resize window"); 

    return 0; 
} 

Имейте в виду, что функция SetConsoleWindowInfo терпит неудачу, если указанное прямоугольное окно выходит за пределы экранного буфера консоли. Подробнее об этом here.

Смежные вопросы