编译问题汇总---Link Error

本文汇总了编译过程中遇到的各种错误及解决方案,包括ULONG_PTR的定义、未声明标识符错误、外部符号错误、Windows子系统设置错误、程序入口设置错误、线程运行时库设置错误等,并提供了详细的错误修复步骤和相关链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

慢慢更新~

1、ULONG_PTR到底是什么?

#if defined(_WIN64)
  typedef __int64 INT_PTR, *PINT_PTR;
  typedef unsigned __int64 UINT_PTR, *PUINT_PTR;

  typedef __int64 LONG_PTR, *PLONG_PTR;
  typedef unsigned __int64 ULONG_PTR, *PULONG_PTR;

  #define __int3264 __int64

#else
  typedef _W64 int INT_PTR, *PINT_PTR;
  typedef _W64 unsigned int UINT_PTR, *PUINT_PTR;

  typedef _W64 long LONG_PTR, *PLONG_PTR;
  typedef _W64 unsigned long ULONG_PTR, *PULONG_PTR;

  #define __int3264 __int32

#endif
#endif


参考:http://topic.youkuaiyun.com/u/20110325/11/46f477d8-1a97-450a-b965-8d3858e4a83b.html

 

2、'KBDLLHOOKSTRUCT' : undeclared identifier

#ifndef WINVER
#define WINVER 0x0400
#endif

#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0400
#endif


参考:http://topic.youkuaiyun.com/u/20091204/12/9db1871b-5e45-4917-8db6-4a7ec5f9ebb5.html


3、error LNK2001: unresolved external symbol _main解决办法

解决外部符号错误:_main,_WinMain@16,__beginthreadex -!t'my`yK  
在创建MFC项目时, 不使用MFC AppWizard向导, 会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有: m1+4#'  
libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main (gd){j  
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 OuR5T>>  
msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值