如何解决为什么我的C ++图形程序未使用g ++编译器显示任何输出?
我已经用C ++编写了代码,如下所示。该程序正在成功编译。但是,当我尝试运行.exe文件时,则没有得到所需的输出。
我的代码:
ConfuserEx
我在Windows命令提示符中使用以下命令来编译程序:
#include<graphics.h>
#include<stdio.h>
#include<conio.h>
#include<dos.h>
int main( )
{
int gd = DETECT,gm;
initgraph(&gd,&gm,(char*)"");
setcolor(BLUE);
line(100,100,200,200);
getch();
closegraph();
}
运行我的.exe文件:
g++ -m32 -o trial trial.cpp -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32 "C:\TDM-GCC-64\x86_64-w64-mingw32\lib\libbgi.a"
用于cmd,trial
用于powershell。
但是在此之后我没有任何输出。为什么会这样?
解决方法
编辑::在指向-L
库的路径之前,您缺少libbgi.a
。此处提供更多详细信息:Directory Options
这些天来,实际上没有人使用graphics.h
。正如其他人指出的那样,还有更好的选择。
但是在StackOverflow上有很多关于使用-1073741819 (0xC0000005)
的错误代码WinBGIm
的问题,但没有任何答案。因此,我想在这里发布一个。
此错误代码是在分段错误时生成的。造成这种情况的因素可能很多,但使用WinBGIm
时,通常是由于库本身存在错误所致。
要使其正常工作,您必须从以下位置更改line 302
和graphics.h
(从official source下载)中的winbgim.h
int left=0,int right=0,int right=INT_MAX,int bottom=INT_MAX,
到
int left=0,int top=0,
差异应该显得微不足道;以前有一个错字,因为有两个名为right
的参数。
here提供了无错误的库和头。
实际上,我现在找到了类似的答案。将来的读者可以参考this。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。