当前位置:编程学习 > VC++ >>

请VC++编程高手帮忙看看

我写了这段代码,但是说有错处,请VC++编程高手门帮忙看看
代码如下:
#include<windows.h>
LONG WINAPI WndProc(HWND,UINT,WPARAM,LPARAM);
intWINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR IpszCmdLine,
int nCmdShow)
{
WNDCLASS wc;
HWND hwnd;
MSG msg;
BOOL bReg
wc.style = CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = (WNDPROC)WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance
wc.hIcon = LoadIcon(NULL,IDI_WINLOGO);
wc.hCursor = LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW +1);
wc.lpszMenuName = NULL;
wc.lpszClassName = "FirstWindowClass";
RegisterClass(&wc);
hwnd = CreateWindow(
"FirstWindowClass",
"第一个Windows应用程序“,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
300,
400,
HWND_DESKTOP,
NULL,
hInstance,
NULL
);
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
while((bRet = GetMessage(&msg,NULL,0,0)) !=0)
{
if(bRet ==-1)
{
}
else
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return msg.wParam;
}
LRESULT CALLBACK WndProc (HWND hWnd,
UINT message,
WPARAM wParam,
LPARAM IParam)
{
PAINTSTRUCT ps;
HDC hdc;
char*szHello="欢迎使用VC";
switch (message)
{
case WM_PAINT;
hdc = BeginPaint(hWnd,&ps);
RECT rc;
GetClientRect(hWnd,&rc);
DrawText(hdc,szHello,strlen(szHello),&rc,DT_CENTER);
EndPaint(hWnd,&ps);
return 0;
case WM_DESTROY;
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hWnd,message,wParam,IParam);
}
补充:编译时输出框显示的是:FirstWindow.exe - 1 error(s), 0 warning(s)
请帮帮忙,谢谢!
答案:
#include<windows.h>
LONG WINAPI WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR IpszCmdLine,
int nCmdShow
) //主窗口定义

{
WNDCLASS wc;
HWND hwnd;
MSG msg;
BOOL bReg;
wc.style = CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = (WNDPROC)WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon(NULL,IDI_WINLOGO);
wc.hCursor = LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW +1);
wc.lpszMenuName = NULL;
wc.lpszClassName = "FirstWindowClass";
RegisterClass(&wc);
hwnd = CreateWindow(
"FirstWindowClass",
"第一个Windows应用程序", //“改"
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
300,
400,
HWND_DESKTOP,
NULL,
hInstance,
NULL
);
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
while((bReg = GetMessage(&msg,NULL,0,0)) !=0)
{
if(bReg ==-1)
{
}
else
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return msg.wParam;
}
LRESULT CALLBACK WndProc (HWND hWnd,
UINT message,
WPARAM wParam,
LPARAM IParam)
{
PAINTSTRUCT ps;
HDC hdc;
char*szHello="欢迎使用VC";
switch (message)
{
case WM_PAINT:
hdc = BeginPaint(hWnd,&ps);
RECT rc;
GetClientRect(hWnd,&rc);
DrawText(hdc,szHello,strlen(szHello),&rc,DT_CENTER);
EndPaint(hWnd,&ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hWnd,message,wParam,IParam);
}


//你自己对吧 我改好了 case语句后面是:不是;
答案补充
BOOL bReg;这个是你定义的变量,到了后面你变成了这个:while((bRet = GetMessage(&msg,NULL,0,0)) !=0)
{
if(bRet ==-1)
而且定义的时候没有带;号
编程最忌讳的就是这些小问题,基础上应该多注意了..
把所有的错误提示发出来

上一个:vc++应用程序调试问题
下一个:VC++ 编程问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,