int driver=DETECT,mode;
initgraph(&driver,&mode,"");
void far *img;
getimage(200,200,500,400,img);
putimage(200,200,img,COPY_PUT);
getch();
closegraph();
У меня есть вопрос. Когда я запускаю приведенный выше код, он показывает BGI Windows, а затем сразу же исчезает, почему?
Дорогой! Все функции graphics.h работают успешно, но эта меня слишком сильно раздражала. Теперь у меня есть вопросы, важно ли это для изучения cpp? если это не в нашем курсе.
Если он исчез без указания символа для getchar, значит, он не запустился. Вероятно потому, что перед вызовом img для getimage не было выделено памяти. Примечание: я не использовал BGI (буквально) десятилетия и тут ничем не могу помочь. но поиск bgi getimage в Интернете должен найти некоторую документацию и, возможно, примеры использования.
Важен ли BGI? Не совсем. Это графический API, разработанный с использованием идиом программирования C 1980-х годов для работы на чрезвычайно ограниченных графических устройствах того времени. Есть гораздо лучшие и более полезные графические инструменты, которые можно изучить и использовать сегодня. Я обычно направляю людей к графическим библиотекам в SDL или SFML, если они новички, желающие изучать графику.
@WajahatKhan BGI не имеет ничего общего с C++. Даже в те времена мы обычно предпочитали использовать VGA 320x200x256c и прямой доступ к памяти VRAM вместо BGI ... Если вам нужна графика, тогда вам нужно решить, для чего ... OpenGL / DirecX хороши для векторной графики GDI хорош для простой диаграммы и растры ... другие библиотеки win обычно просто инкапсулируют одну из этих 3 ...





Заставить BGI, графическую библиотеку тридцатилетней давности работать на современных компьютерах, может быть сложно. Есть обновления и порты этой библиотеки, некоторые из них совсем недавние и заслуживающие доверия, но вы должны быть осторожны. Если в вашем курсе предусмотрена библиотека bgi и указана цепочка инструментов, используйте их точно. Вы же не хотите писать что-то, что отлично работает на вашем компьютере и плохо работает на компьютере маркера. Если вы делаете это по своим причинам, используйте то, что хотите.