c 语言 C:/mingw/mingw64/x86_64-w64-mingw32/include/wingdi.h:1706:5: 错误: 未知类型名称 'DWORD'

宫城兵客

内容

你怎么了?我不明白我从来没有篡改过 wingdi.h

如果不行,我就放弃gcc和c语言。我将制作自​​己的编译器和语言。如果你批评我,我想创建一个像stackoverflow这样的服务作为对策。

我做了什么

wingdi.h 在看着你,孩子

typedef {
  unsigned int  UINT,
  int           WORD,
  long long     DWORD,
  unsigned char UCHAR,
  byte          BYTE,
  void**        POINT,
}

环境

视窗 10(64 位)

gcc (x86_64-posix-seh-rev0, 由 MinGW-W64 项目构建) 8.1.0

// 他のだっとめんどくさいから許してね?w
//
#include <stdio.h>
#include <wingdi.h>
#include <winbase.h>
#include <windows.h>

void wingdi__display__write(int win_hei, int win_wid, int display_map);

void main(void){
  wingdi__display__write(1000,1000,0);
}

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
  return 0;
}


//wingdi
void wingdi__display__write(int win_hei, int win_wid, int display_map)
{
  HDC  object    =    NULL,  hdc    =    NULL;
  HWND handle    =    NULL;
  HBRUSH brush   =    NULL;

  hdc            =    GetDC(handle);  
  brush = CreateSolidBrush(RGB(0, 0, 0));
  SelectObject(object, brush);

  BitBlt(hdc, 0, 0, win_wid, win_hei, object, 0, 0, SRCCOPY);
}
乔治亚德斯

typedef如您所示,C 不支持“块”;每个typedef必须单独出现如下:

typedef unsigned int  UINT;
typedef int           WORD;
typedef long long     DWORD;
typedef unsigned char UCHAR;
typedef uint8_t       BYTE;
typedef void**        POINT;

顺便说一句,将指针类型隐藏在 a 后面被认为是不好的做法typedef,所以你POINT应该被淘汰。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章