#include<graphics.h>
#include<stdlib.h>
#include<time.h>
#include<cstdio>
#define N 10
#define M 30
/*全局变量*/
mouse_msg Mouse;
PIMAGE Picture[12];
int Chess_Board[N+2][N+2];
int Chess_Board_Mode[N+2][N+2];
/*函数*/
void Load_Picture();
void Load_Chess_Board();
void Show_Chess_Board();
int main(){
initgraph(N*M,N*M);
for(;is_run();){
Show_Chess_Board();
Mouse=getmouse();
if(Mouse.is_left()){
if(Chess_Board[Mouse.x/30+1][Mouse.y/30+1]>=0) Chess_Board_Mode[Mouse.x/30+1][Mouse.y/30+1]=1;
else Chess_Board_Mode[Mouse.x/30+1][Mouse.y/30+1]=3;
}
if(Mouse.is_right()){
Chess_Board_Mode[Mouse.x/30+1][Mouse.y/30+1]=2;
}
}
closegraph();
return 0;
}
/*图片初始化*/
void Load_Picture(){
char Path[20];
for(int i=0;i<=11;i++){
Picture[i]=newimage();
sprintf(Path,"ui//%d.jpg",i);
getimage(Picture[i],Path);
}
}
/*初始化棋盘*/
void Load_Chess_Board(){
for(int i=1;i<=N;i++)
for(int j=1;j<=N;j++){
srand((unsigned)time(NULL));
int n=rand()%50;
if(n==1){
Chess_Board[i][j]=-1;
for(int x=-1;x<=1;x++)
for(int y=-1;y<=1;y++)
if(Chess_Board[i+x][j+y]>=0) Chess_Board[i+x][j+y]++;
}
}
}
/*显示棋盘*/
void Show_Chess_Board(){
for(int i=1;i<=N;i++)
for(int j=1;j<=N;j++){
if(Chess_Board_Mode[i][j]==0) putimage(Picture[10],(i-1)*M,(j-1)*M);
if(Chess_Board_Mode[i][j]==1) putimage(Picture[Chess_Board[i][j]],(i-1)*M,(j-1)*M);
if(Chess_Board_Mode[i][j]==2) putimage(Picture[11],(i-1)*M,(j-1)*M);
if(Chess_Board_Mode[i][j]==3) putimage(Picture[9],(i-1)*M,(j-1)*M);
}
}
错误信息:
In function 'void Show_Chess_Board()':
59 53\main.cpp [Error] invalid conversion from 'ege::PIMAGE' {aka 'ege::IMAGE*'} to 'int' [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1
939 26 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 1 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
59 68[Error] invalid conversion from 'int' to 'ege::PCIMAGE' {aka 'const ege::IMAGE*'} [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1 C:\Users\宋铭淇\Desktop\扫雷素材\main.cpp from main.cpp
939 50 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 3 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
60 68[Error] invalid conversion from 'ege::PIMAGE' {aka 'ege::IMAGE*'} to 'int' [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1 C:\Users\宋铭淇\Desktop\扫雷素材\main.cpp from main.cpp
939 26 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 1 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
60 83[Error] invalid conversion from 'int' to 'ege::PCIMAGE' {aka 'const ege::IMAGE*'} [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1
from main.cpp
939 50 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 3 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
61 53[Error] invalid conversion from 'ege::PIMAGE' {aka 'ege::IMAGE*'} to 'int' [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1 C:\Users\宋铭淇\Desktop\扫雷素材\main.cpp from main.cpp
939 26 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 1 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
61 68[Error] invalid conversion from 'int' to 'ege::PCIMAGE' {aka 'const ege::IMAGE*'} [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1 from main.cpp
939 50 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 3 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
62 52 [Error] invalid conversion from 'ege::PIMAGE' {aka 'ege::IMAGE*'} to 'int' [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1 from main.cpp
939 26 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 1 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
62 67 [Error] invalid conversion from 'int' to 'ege::PCIMAGE' {aka 'const ege::IMAGE*'} [-fpermissive]
42 c:\program files (x86)\dev-cpp\mingw32\include\graphics.h In file included from c:\program files (x86)\dev-cpp\mingw32\include\graphics.h
1 from main.cpp
939 50 c:\program files (x86)\dev-cpp\mingw32\include\ege.h [Note] initializing argument 3 of 'void ege::putimage(int, int, ege::PCIMAGE, DWORD)'
29 C:\Users\***\Desktop\扫雷素材\Makefile.win recipe for target 'main.o' failed
坐等大佬