高手请帮忙调试!
这个程序出现这样的错误,请帮忙解决:
Deleting intermediate files and output files for project 'exp - Win32 Debug'.
--------------------Configuration: exp - Win32 Debug--------------------
Compiling...
exp.cpp
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/exp.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
exp.exe - 2 error(s), 0 warning(s)
源程序如下:
#include <windows.h>
//定义全局变量
HINSTANCE hInst;
HWND hWnd;
MSG msg;
char lpszClassName[] = "窗口";
char * ShowText;
//定义函数
ATOM MyRegisterClass(HINSTANCE hInstance); //注册窗口类函数
BOOL Create(HINSTANCE,int); //程序实例寝化函数
INT Run(); //消息循环函数
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); //窗口函数
// 主函数
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
MyRegisterClass(hInstance); //定义和注册窗口类
Create(hInstance,nCmdShow); //创建窗口
ShowWindow(hWnd,nCmdShow); //显示窗口
UpdateWindow(hWnd); //更新屏幕显示
return Run(); //消息循环
}
//注册窗口类的函数
ATOM MyRegisterClass(HINSTANCE hInstance)
{
WNDCLASS wc;
wc.style = 0;
wc.lpfnWndProc = WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon(NULL,IDI_APPLICATION);
wc.hCursor = LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.lpszMenuName = NULL;
wc.lpszClassName = lpszClassName;
return RegisterClass(&wc);
}
//创建窗口的函数
BOOL Create(HINSTANCE hInstance,int mCmdShow)
{
hWnd = CreateWindow (lpszClassName, "Window",WS_OVERLAPPEDWINDOW, 120,50,800,600,NULL,NULL,hInstance,NULL);
return TRUE;
}
//消息循环的函数
int Run()
{
while (GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
//窗口函数
LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
switch(message)
{
case WM_LBUTTONDOWN:
ShowText = "Hello!";
InvalidateRect(hWnd,NULL,1);
break;
case WM_PAINT:
hdc = BeginPaint(hWnd,&ps);
TextOut(hdc,50,50,ShowText,6);
EndPaint(hWnd,&ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,message,wParam,lParam);
}
return 0;
}