You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Win32 API C++中CreateWindow报"expected a ')'"错误求助

编译错误“expected a ')'”的原因与解决方法

你的问题出在宏定义的多余分号上。

看你代码里的这一行:

#define ID_BUTTON 1;

宏是预编译阶段的文本替换,当代码执行到(HMENU) ID_BUTTON时,会被替换成(HMENU) 1;。这就导致CreateWindow的参数列表里多了一个分号,破坏了函数调用的语法结构,编译器自然会报“expected a ')'”错误。

解决方法很简单,去掉宏定义末尾的分号:

#define ID_BUTTON 1

修改后,(HMENU) ID_BUTTON会被正确替换为(HMENU) 1,符合CreateWindow的参数要求,编译就能正常通过。

内容的提问来源于stack exchange,提问作者RazzelDazzel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 12:55:18