CodeBlocks error in graphics library

2019-07-17 05:42发布

问题:

I executed the following code in codeblocks IDE-

#include <iostream>
#include <graphics.h>
using namespace std;

int main()
{
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "C:\TC\BGI");
    line(100, 200, 150, 250);
    cout << "Hello world!" << endl;

    return 0;
}

and while debugging my code stopped at this point in graphics.h

int left=0, int right=0, int right=INT_MAX, int bottom=INT_MAX,

I have included the WinBGIm library.

回答1:

Looks like issue with initialization of graphics driver.

What is the output of following code on your IDE?

#include <iostream>
#include <graphics.h>
using namespace std;

int main()
{
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "C:\\TC\\BGI");

    int errorcode = graphresult();
    if (errorcode != grOk)
    {
        cout << "Graphics error: " <<  grapherrormsg(errorcode) << endl;
        return 1;
    }

    line(100, 200, 150, 250);
    cout << "Hello world!" << endl;

    return 0;
}


回答2:

You are setting right twice on this line in graphics.h:

int right=0, int right=INT_MAX

Change the line to this:

int left=0, int top=0, int right=INT_MAX, int bottom=INT_MAX



回答3:

You should correct graphics.h in this way:

int left=0;
int top=0;
int right=INT_MAX;
int bottom=INT_MAX;