【发布时间】:2012-11-02 23:06:49
【问题描述】:
(1) [已解决!]
wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
警告:从指针转换为不同大小的整数 [-Wpointer-to-int-cast]
解决方案
我通过使用解决了
wcex.hIcon = LoadIcon(NULL, IDI_APPLICATION);
因为我查看了IDI_APPLICATION 的定义,它被定义为
#define IDI_APPLICATION MAKEINTRESOURCE(32512)
奇怪吗? un peu。
(2) [已解决!]
MessageBox(NULL,
_T("Call to RegisterClassEx failed!"),
_T("Win32 Guided Tour"),
NULL); // < here
警告:传递 'MessageBoxW' 的参数 4 从指针生成整数,无需强制转换 [默认启用]
【问题讨论】:
-
wcex.hIcon是什么类型?当MessageBox中需要一个整数时,为什么要传递 NULL? -
第二个:说
0。永远不要将NULL用作整数——它不是!这是一个指针!它甚至不必所有位都为零。 -
@KerrekSB - 好吧,我只是复制并粘贴这段代码msdn.microsoft.com/en-us/library/bb384843.aspx
-
@Fabricio:现在您刚刚了解了为什么 MS 网站对于学习如何编程来说是一个糟糕的地方!将其视为 API 参考,但仅此而已。你必须自带技能。
-
@KerrekSB - 哦,真的吗?生活是谎言。 D: