Ошибка с Графической программой с помощью C (Ubuntu 14.04)

Относительно этого потока, Как я использую graphics.h в Ubuntu?, я выполнил следующую программу (показанный ниже блока), но программа, к сожалению, заканчивается автоматически после нескольких секунд со следующим сообщением:

$ gcc -o DDA.o DDA.c -lgraph
$ DDA.o
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
DDA.o: ../../src/xcb_io.c:274: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.

#include <graphics.h>
#include <stdio.h>
#define ROUND(a) ((int) (a+0.5))
#include <X11/Xlib.h>

main()
{
    int gd = DETECT,gm,left=100,top=100,right=200,bottom=200,x=300,y=150,radius=50;
    initgraph(&gd,&gm,NULL);
    rectangle(left, top, right, bottom);
    circle(x, y, radius);
    bar(left + 300, top, right + 300, bottom);
    line(left - 10, top + 150, left + 410, top + 150);
    ellipse(x, y + 200, 0, 360, 100, 50);
    outtextxy(left + 100, top + 325, "C Graphics Program");
    delay(5000);
    closegraph();
    return 0;
}

PS: Я ОЧЕНЬ НЕ ХОЧУ ПРОГРАММИРОВАТЬ В TC ++ (ИСПОЛЬЗУЯ DOSBOX). ЕСЛИ ВЫ НЕ ЗНАЕТЕ РЕШЕНИЯ, ЗАТЕМ РЕКОМЕНДУЙТЕ МНЕ ЧТО-ТО, ГДЕ Я МОГУ БЕЗОПАСНО ЗАПУСТИТЬ СВОИ ГРАФИЧЕСКИЕ ПРОГРАММЫ В C НА :)

0
задан 13 April 2017 в 15:23

3 ответа

Когда я изучил язык программирования C/C++, мы действительно пользовались библиотекой, названной Allegro, который, казалось, был хорошим & легкая библиотека для выполнения в графическом программировании.

http://liballeg.org/

0
ответ дан 1 October 2019 в 03:49

Необходимо вызвать функцию initgraph в Вашем графическая программа C путем передачи пути библиотеки BGI (интерфейс графики Borland) для инициализации графического драйвера. Это инициализирует графическую систему путем загрузки переданного графического драйвера, затем изменяющего систему в графический режим. Это также сбрасывает или инициализирует все графические настройки как цвет, палитра, текущая позиция и т.д., к их значениям по умолчанию.

driverDirectoryPath: Это указывает путь к каталогу, где файлы графического драйвера (файлы BGI) расположены. Если путь к каталогу не будет обеспечен, то он будет seach для файлов драйвера в текущем рабочем каталоге каталога. Проверьте этот пример программы http://www.techcrashcourse.com/2015/08/c-program-draw-circle-graphics.html

0
ответ дан 1 October 2019 в 03:49

Можно добавить следующую функцию прежде, чем закрыть график для наблюдения стабильного вывода. Это работало на меня!

пустой wait_for_char () {

//Wait for a key press
int in = 0;

while (in == 0) {
    in = getchar();
}

}

-1
ответ дан 1 October 2019 в 03:49

Другие вопросы по тегам:

Похожие вопросы: