gpt4 book ai didi

c - 没有打印出任何字母?

转载 作者:太空宇宙 更新时间:2023-11-04 08:48:03 26 4
gpt4 key购买 nike

#include <stdio.h>
#include <stdlib.h>
#define WINVER 0x0500
#include <windows.h>

/// Glabal Handle
HANDLE StdHandle;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
StdHandle = GetStdHandle(STD_OUTPUT_HANDLE); // Console window
MSG Msg ;
while (GetMessage(&Msg, NULL, 0, 0))
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam ;
}

LRESULT CALLBACK WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg)
{
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_KEYDOWN:
if(wParam == VK_LCONTROL)
printf ("LSHIFT");
break;
return 0 ;
}

return DefWindowProc(hWnd, msg, wParam, lParam) ;
}

此代码可以使用 mingw32-GCC 编译,没有任何警告和错误。

如果按下左侧控件,它应该打印出“LSHIFT”,但它没有。

为什么?

最佳答案

你的程序没有创建窗口,所以它不能接收任何窗口消息。

您通常希望创建并注册一个窗口类(使用 RegisterClass()RegisterClassEx()),然后使用 创建窗口实例>CreateWindow()CreateWindowEx()

关于c - 没有打印出任何字母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20870157/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com