DEV-C++ 报错……ld returned 1 exit status
按照小甲鱼老师给的模板运行了一下,结果就是 {:10_266:} ld returned 1 exit status/* -------------------------------------------------------------------
MyWindows.c -- 基本窗口模型
《Windows 程序设计(SDK)》视频教程
--------------------------------------------------------------------*/
#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
static TCHAR szAppName[] = TEXT("MyWindows");
HWND hwnd;
MSG msg;
WNDCLASS wndclass;
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);
wndclass.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = szAppName;
if (!RegisterClass(&wndclass))
{
MessageBox(NULL, TEXT("这个程序需要在 Windows NT 才能执行!"), szAppName, MB_ICONERROR);
return 0;
}
hwnd = CreateWindow(szAppName,
TEXT("鱼C工作室"),
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hwnd, iCmdShow);
UpdateWindow(hwnd);
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
RECT rect;
switch (message)
{
case WM_PAINT:
hdc = BeginPaint(hwnd, &ps);
GetClientRect(hwnd, &rect);
DrawText(hdc, TEXT("大家好,这是我的第一个窗口程序!"), -1, &rect,
DT_SINGLELINE | DT_CENTER | DT_VCENTER);
EndPaint(hwnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd, message, wParam, lParam);
}
补充内容 (2020-7-6 12:51):
自己琢磨出来了https://fishc.com.cn/thread-173223-1-1.html dev还是有一些漏洞的,我一个学长说他c语言答辩用的dev,在宿舍还好好的,答辩时出问题了,一直报错。如果语法没问题的话,楼主重启一下电脑试试吧 小甲鱼的铁粉 发表于 2020-6-5 22:35
dev还是有一些漏洞的,我一个学长说他c语言答辩用的dev,在宿舍还好好的,答辩时出问题了,一直报错。如果 ...
重启了,没用{:10_266:}
(我本来想换 VS 的,但是发现我的电脑装不下了{:10_266:}{:10_266:}{:10_266:}) ld 报错表示程序的语法逻辑没有问题,已经通过了编译,只是链接的时候出错,问题通常是函数或外部变量不落实。楼主应该把出错信息帖全,编译器在报这个错误的时候,一定会同时给出找不到的函数或变量标识的具体细节提示。 ld的时候系统无法找到_imp....函数。
也就是说编译器在link得时候找不到其中的一个使用库的函数 liuzhengyuan 发表于 2020-6-5 22:36
重启了,没用
(我本来想换 VS 的,但是发现我的电脑装不下了 ...
那没办法了{:10_266:}等明天大佬都起床吧,我们刚讲到结构体,我看不懂你的代码{:10_266:} 编译的时候添加 -mwindows 选项即可解决问题。
我把你的代码存为 x.c,然后,我用下面的命令行编译:
g++ -mwindows -o x x.c
编译成功。
有图有真相
抢 jackz007 发表于 2020-6-5 23:43
编译的时候添加 -mwindows 选项即可解决问题。
我把你的代码存为 x.c,然后,我用下面的命令 ...
我把第24行注释掉也可以编译成功…… 占{:10_256:} 我是非酋{:10_266:}
补充内容 (2020-6-7 12:24):
为什么被疯掉了
页:
[1]