графика.h не дает вывода

#c #c

#c #c #bgi

Вопрос:

 #include <graphics.h>
#include <conio.h>


int main()

{
    int gd = DETECT, gm;
    initgraph(amp;gd,amp;gm, "");
    for (int i=200;i<400;i=i 25)
    {
        for (int j=200;j<400;j=j 25)
        {
            circle(i,j,100);
        }
    }
    getch();
    closegraph();

    return 0;
}
 

Я загружаю http://winbgim.codecutter.org /
извлекать и копировать-вставлять

 graphics.h
winbgim.h
libbgi.a
 

Я установил Settings => Compiler => Linker настройки. и добавьте -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32
Я меняю строку 302 как int left=0, int top=0, int right=INT_MAX, int bottom=INT_MAX,
и использую .cpp, а не .c, но выходных данных по-прежнему нет

Комментарии:

1. Вы можете рассмотреть возможность проверки на наличие ошибок, как показано в приведенном здесь примере: winbgim.codecutter.org/V6_0/doc/initgraph.html Возможно, также было бы лучше начать с малого. Нарисуйте один круг, и если это сработает, вы можете постепенно что-то менять и посмотреть, где он ломается.

2. На этой странице Microsoft написано: «Ошибка C0000005 — это ошибка памяти. В частности, ошибка C0000005 является ошибкой нарушения доступа, вызванной переполнением буфера «.

3. Что мне делать с ошибкой C0000005 @WeatherVane не понимает решения на странице Microsoft

4. я копирую-вставляю пример в winbgim.codecutter.org/V6_0/doc/initgraph.html но все равно ничего не вышло @RetiredNinja

5. Настройка left=0, int top=0, int right=INT_MAX, int bottom=INT_MAX неразумна. Для 4611686014132420609 32-разрядной версии нужны пиксели int .

Ответ №1:

Ваш код идеален. Вы просто забыли указать путь к папке BGI. На моей машине BGI-путь "C:TurboC DiskTurboC3BGI" . Поскольку я запускаю его в DOSBox. Таким образом, путь становится "C:\TurboC3\BGI"

Вот рабочий код.

 #include <graphics.h>
int main()
{
    int gd = DETECT, gm, i, j;
    initgraph(amp;gd,amp;gm, "c:\TurboC3\BGI");
    for (i=200;i<400;i=i 25)
    {
        for (j=200;j<400;j=j 25)
        {
            circle(i,j,100);
        }
    }
    getch();
    closegraph();
    return 0;
}
 

BGI (графический интерфейс Borland): — Графический интерфейс для компьютера с Windows. В нем определены такие функции, как circle(), arc(), line() и т.д. graphics.h это как драйвер для рисования графики и использования интерфейса BGI.

Вы получаете ошибку BGI Error: Graphics not initialized (use 'initgraph') . Вы не можете видеть это, потому что экран быстро гаснет. В TurboC нажмите на Window опцию в самом правом верхнем углу. А затем нажмите на Output . Тогда окно вывода будет находиться внизу.

Ошибка:- введите описание изображения здесь

Вывод:-
введите описание изображения здесь