CodeBlocks IDEでグラフィックコードをコンパイルすると、「グラフィックス.hが見つかりません」というエラーが表示されます。これは、CodeBlocksのライブラリフォルダーでgraphics.hが実行されていないためです。CodeBlocksでグラフィックコードを正常にコンパイルするには、winBGImライブラリを設定してください。
では、どのようにgraphics.hをCodeBlocksに含めるのですか?
CodeBlocksに「graphics.h」を含めてCodeblockでグラフィックスコードを正常にコンパイルするには、以下の手順に従ってください。
ステップ1:
CodeBlocksで「graphics.h」を設定するには、最初にwinBGImグラフィックライブラリを設定します。https://download.csdn.net/download/UCB001/12152858からWinBGImをダウンロードします
ステップ2:
ダウンロードしたファイルを解凍します。3つのファイルがあります:
- graphics.h
- winbgim.h
- libbgi.a
ステップ3:
graphics.hファイルとwinbgim.hファイルをコピーして、コンパイラディレクトリのincludeフォルダに貼り付けます。(コンピューターのCドライブにCode :: Blocksをインストールした場合は、次の手順を実行してください:Disk C >> Program Files >> CodeBlocks >> MinGW >> include。これら2つのファイルをここに貼り付けます。)例: C:\ Program Files(x86)\ CodeBlocks \ MinGW \ include
ステップ4:
libbgi.aをコピーしてコンパイラディレクトリのlibフォルダに貼り付けます。
ステップ5:
CodeBlocksを開きます。[設定] >> [コンパイラ設定] >> [リンカー設定]に移動します。
ステップ6:
このウィンドウで、[リンクライブラリ]セクションの下にある[追加]ボタンをクリックして参照します。
手順4でlibフォルダにコピーされたlibbgi.aファイルを選択します。
ステップ7:
コマンドを右側に貼り付けます(つまり、他のリンカーオプション)
-lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32
ステップ8:
[OK]をクリックします
通常、このステップで成功し、次のステップは必要ない場合があります
ステップ9:
CまたはC ++を使用してgraphics.hプログラムをコンパイルしてみてください。可能まだエラーがあります。この問題を解決するには、Notepad ++(またはSublime、VSCodeなどのエディター)を使用してgraphics.hファイルを開きます(手順3のincludeフォルダーに貼り付けます)。行302に移動し、次の行に置き換えます:int left = 0、int top = 0、int right = INT_MAX、int bottom = INT_MAX、
ステップ10:
ドキュメントを保存します。終了しました!
注:これで、graphics.hヘッダーファイルを含む任意のCまたはC ++プログラムをコンパイルできます。Cコードをコンパイルしても、「致命的なエラー:sstream:そのようなファイルディレクトリはありません」というエラーメッセージが表示されます。
この問題で、ファイル拡張子が.cの場合は、.cppに変更します。
graphics.hサンプル教育コードを添付してください:
#include <stdio.h>
#include <graphics.h>
int main()
{
//设置窗口大小
initwindow(200,200,"XTU",0,0);
int maxX = getmaxx();
int maxY = getmaxy();
//设置窗口背景色
setfillstyle(1,LIGHTGRAY);
bar(0,0,maxX,maxY);
//画矩形
setcolor(RED);
rectangle(0,0,maxX,maxY);
rectangle(50,50,70,150);
//画填充矩形
setfillstyle(1,GREEN);
bar(100,50,120,150);
//画直线
setcolor(RED);
line(150,50,150,150);
//画文字
setcolor(BLUE);
setbkcolor(LIGHTGRAY);
settextstyle(SMALL_FONT, HORIZ_DIR, 5);
outtextxy(150, 150, "3278");
//结束绘图
getch();
closegraph();
}