刚刚学游戏设计,抄了书上的代码却出错很多,不知为啥,求大神来解
刚学游戏设计,抄了书上的代码却出错很多,不知为啥,求大神来解
------解决方案--------------------
是用孙鑫老师的《VC++深入详解》视频教程吧?如果你用的不是VC 6的话,那么很多代码是不适用的了。我也正在学习游戏编程,欢迎来聊!QQ:2024958085
------解决方案--------------------
你用IDE带的编译功能,能否编过?
估计是CL的参数不全。
------解决方案--------------------
首先,把书找出来,一个一个字母对一边。如果没发现自己敲错了,那就把书扔了。
17行的wndcls.hIcon=(NULL,IDI_ERROR); 是什么情况?
第25行报错是 NULLL,3个L
35行参数(HWND hwnd,小写w,到了42行hDc=BeginPaint(hWnd,&ps); 变大些了。后面几行也是
------解决方案--------------------
TextOut(hDC,200,0,"First Windows Program !",strlen("C++游戏开发"));
这又是什么东西?为什么text和text的长度是两不同字符串???
lz可以去参悟参悟zhao4zhong1那段关于打字员的名言
------解决方案--------------------
不是打字员,是程序员!
关于自己是否适合编程的很简单的测试:
在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案:
A里面有10处以上文字或标点错误
B里面没有文字或标点错误并敢为此跟人打赌
C里面没有文字或标点错误并且字体和排版完全与原稿一致
D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感
A不适合编程(理由:打字准确度偏低、粗心大意)
B初级程序员(理由:打字准确度很高、认真细致、自信、理解全角半角概念)
C高级程序员(理由:在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证)
D软件项目经理(理由:能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业!)
如果想从A变成B的话,到我的资源http://download.****.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习”
#include<windows.h>
#include<stdio.h>
LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd
)
{
WNDCLASS wndcls; //定义窗口对象
wndcls.cbClsExtra=0; //指定额外内存空间
wndcls.cbWndExtra=0;
wndcls.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); //指定窗口背景色
wndcls.hCursor=LoadCursor(NULL,IDC_CROSS); //设置光标样式
wndcls.hIcon=(NULL,IDI_ERROR); //设置图标样式
wndcls.hInstance=hInstance;//指定窗口实例句柄
wndcls.lpfnWndProc=WinSunProc;//指定窗口函数 ,即处理窗口的函数
wndcls.lpszClassName="First Windows Program !";//指定窗口类名
wndcls.lpszMenuName=NULL; //窗口菜单
wndcls.style=CS_REDRAW|CS_VREDRAW;
RegisterClass(&wndcls);//注册窗口类
HWND hwnd;//声明窗口句柄
hwnd=CreateWindow("First Windows Program !","C++游戏开发",WS_OVERLAPPEDWINDOW,200,200,600,400,NULLL,NULL,hInstance,NULL);
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd);
MSG msg;
while(GetMessage(&msg,NULL,0,0){
TranslateMessage(&msg);
DispartchMessage(&msg);
}
return 0;
}
LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
switch(uMsg)
{
case WM_PAINT:
HDC hDc;
PAINTSTRUCT ps;
hDc=BeginPaint(hWnd,&ps);
TextOut(hDC,200,0,"First Windows Program !",strlen("C++游戏开发"));
EndPaint(hDc,&ps);
break;
case WM_CLOSE:
if(IDYES==MessageBox(hWnd,"是否真的结束?","游戏开发",MB_YESNO))
{
DestoryWindow(hwnd);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
return 0;
}
------解决方案--------------------
是用孙鑫老师的《VC++深入详解》视频教程吧?如果你用的不是VC 6的话,那么很多代码是不适用的了。我也正在学习游戏编程,欢迎来聊!QQ:2024958085
------解决方案--------------------
你用IDE带的编译功能,能否编过?
估计是CL的参数不全。
------解决方案--------------------
首先,把书找出来,一个一个字母对一边。如果没发现自己敲错了,那就把书扔了。
17行的wndcls.hIcon=(NULL,IDI_ERROR); 是什么情况?
第25行报错是 NULLL,3个L
35行参数(HWND hwnd,小写w,到了42行hDc=BeginPaint(hWnd,&ps); 变大些了。后面几行也是
------解决方案--------------------
TextOut(hDC,200,0,"First Windows Program !",strlen("C++游戏开发"));
这又是什么东西?为什么text和text的长度是两不同字符串???
lz可以去参悟参悟zhao4zhong1那段关于打字员的名言
------解决方案--------------------
不是打字员,是程序员!
关于自己是否适合编程的很简单的测试:
在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案:
A里面有10处以上文字或标点错误
B里面没有文字或标点错误并敢为此跟人打赌
C里面没有文字或标点错误并且字体和排版完全与原稿一致
D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感
A不适合编程(理由:打字准确度偏低、粗心大意)
B初级程序员(理由:打字准确度很高、认真细致、自信、理解全角半角概念)
C高级程序员(理由:在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证)
D软件项目经理(理由:能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业!)
如果想从A变成B的话,到我的资源http://download.****.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习”