DWORD,BYTE,句柄类型

双字(double word)、字(word)、半字(Half-Word)、字节(Byte) 半字长8bit,字长16bit,双字长32bit,四字长64bit。因为Intel公司中无论是32位架构的机器还是64位架构的机器,它们都是从16位架构的基础上扩展的。字长决定了处理器一次可以处理的二进制代码的位数,我们所说的8位处理器、16位处理器、32位处理器、64位处理器就是其字长不同。字长:一个字包含的字节数,CPU和内存之间的数据传送单位通常是一个字长。字:CPU与内存之间,传输固定大小的数据,这块数据被称为字。8/16位处理器的字长和半字长都是16bit。8/16位处理器:字长16bit。 阅读详情

DWORD:就是double word,每个word为两个字节,所以double word就是四个字节,每个字节为8位,所以DWOD是32位

typedef unsigned long DWORD ,DWORD现在表示32bit无符号整数,以后windows升级到64位了,DWORD仍然表示32位(也许以后long不是32位了,此时DWORD就不是32位了),那些和位数相关的整数,最好不要用int,long,short之类的类型,因为这些类型的位数都是不确定的,如在16位操作系统中int是16位,32位中int为32位,所以等到后来的就不好定了,程序移植性差,用重新定义的类型这个问题就好解决了,只需重新定义一下类型就行了。


BYTE:BYTE数据类型用一个字节存储,可以区别256个数字,取值范围是从0-255的无符号整数,所以不能表示负数,效果等同于usinged char

typedef BYTE unsigned char,这样就定义了一种新的类型,在vc++中byte类型包含在windows.h头文件中,所以用此类型时,需要添加#include <windows.h>


句柄:是windows用来表示对象的,句柄是windows操作系统中一个概念,在windows程序中有各种各样的资源(窗口,图标,光标等),系统在创建这些系统资源时需要为他们分配内存,并返回这些资源的标识号,这个标识号就是句柄,句柄指的是一个核心对象在某一个进程中的唯一索引,而不是指针,由于地址空间的限制,句柄所标识的内容对进程是不可见得,只能通过操作系统通过进程句柄列表进行维护

PS:句柄列表:每个进程都要创建一个句柄列表,这些句柄指向各种系统资源,比如信号量,线程,文件等,进程中的所以线程都可以访问这些资源

输出句柄值都是小于100的,无效返回值为INVALID_HANDLE_VALUE


HMODULE:模块句柄,代表程序载入的模块,win32系统中通常是载入模块的线性地址

HANDLE:代表系统的内核对象,如文件句柄,线程句柄,进程句柄

HINSTANCE:在win32中与HMODULE是同样的东西,在win32中还存在的原因是在win16中使用HINSTANCE来区别task

HWND:窗口句柄

typedef HINSTANCE HMODULE;

typedef HANDLE HINSTANCE;

typedef PVOID HANDLE;

typedef void *PVOID;

其实这些都是句柄,为了表达的方便,所以对于不同的类型使用不同样的typedef,比如HISTANCE表示实例句柄,HMODULE表示模块句柄,实际上他们本质上都是VOID指针,可以执行任何类型。

高德地图JSAPI中旋转Marker点标签图片时候,且不旋转lable内容方法。 高德地图JSAPI中旋转Marker点标签图片时候,且不旋转lable内容方法 阅读详情

相关推荐

Vector CANape的使用记录

开门见山,今天想和大家分享下CANape使用记录,分享原因是近日在分析一个客户现场软件问题时,需要用到CANape来实时的监测ECU中的变量,因为之前对CANape的认知比较浅薄,觉得标定工程师使用他就足够了,但是这次的经历让我觉得需要写点东西来记录自己学习并使用他的过程。 相信大家能够在网上找到很多关于如何使用CANape的文章,从新建Project到后面的数据的观测、保存以及回放等等。我个人也是这么学过来的,所以我不打算从那些方面着手去描述如何使用她,而是根据我的真实使用过程以及问题的抛出到如何解决来

2万+

分享一个知识点:一个word一般来说占4个byte或8个byte

以前总是没搞清楚半字,字到底有多少个字节,有说字是4字节的,又说字是8字节的,但没有个固定的说法 下面这段话摘抄自Computer system: a programmer’s perspective Buses are typically designed to transfer fixed-sized chunks of bytes known as words. The number of bytes in a word (the word size) is a fundamental system

Leviiiiiiiii的博客 7279

Java对接海康威视明眸门禁设备

海康威视合作生态致力打造一个能力开放体系、两个生态圈,Hikvision AI Cloud开放平台是能力开放体系的核心内容。它是海康威视基于多年在视频及物联网核心技术积累之上,融合AI、大数据、云计算等技术,为合作伙伴提供的一个二次开发及创新的平台。的SDK复制到linux的lib目录下(如果是docker发布,记得做好共享映射哦)大家有没有想过,windows版的SDK为什么要复制到项目根目录的lib文件夹下?所以发布到linux的时候,我们需要将。打开AcsMain文件。................

Good Luck 7876

【C语言 | 基础】计算机的位(bit)、字节(Byte)、字(word)、双字(DWord)、四字(QWord)分别代表什么

介绍 计算机领域,位、字节、字、双字和四字等描述计算机中数据存储和处理单位的术语

wkd_007的博客 1万+

光电容积脉搏波PPG信号分析笔记

脉搏波信号PPG分析笔记

teresa_zp的专栏 6478

app编写需要哪种语言

原生App开发:优选Swift(iOS)和Kotlin(Android)。跨平台App开发:优选Flutter(Dart)和React Native(JavaScript)。游戏App开发:优选Unity(C#)和Unreal Engine(C++)。低代码工具:适合简单、快速的App制作。

fanying_98的博客 2071

基础数据类型范围

 8/16位系统 1.     int(2个字节)-(2^15-1)~(2^15-1),即-32767~32767,数量级3*10^4 2.     unsigned  int(2个字节) 0~(2^16-1),即0~65535,数量级6*10^4. 3.     long int(4字节):-(2^31-1)~(2^31-1),即-2147483647 ~2147483647,数量级:2*...

世界的博客 3256

stm32h743 FM25CL64铁电存储器踩坑记录

调试FRAM经验总结: 1、跑完FRAM读写代码之后,逻分仪发现总线上只有简单、短暂的电平变化,明显不是SPI的通信数据。 (经提醒发现连片选拉高拉低都没有执行到位) 后来发现是因为片选引脚没有初始化,所以直接拉高拉低是无效的。 2、引脚成功初始化后发现CLK、MISO、MOSI数据仍不正常。通过加打印的方式发现跑到HAL_SPI_Transmit中之后还没有执行到写SPI数据寄存器的那一步就return了。 后来经提醒发现: 上图中的指针使用方式错误 后来又发现: 打印出来发现

kuniqiw的博客 3844

win32编程常用的数据类型

在Win32里,句柄是指向一个“无类型对象”(void*)的指针,也就是一个4字节长的数据。无论它的本质是什么,句柄并不是一个真正意义上的指针。从构造上看,句柄是一个指针,尽管它没有指向用于存储某个对象的内存位置。事实上,句柄指向一个包含了对该对象进行的引用的位置。BSTR:32-bit 字符指针BYTE:8-bit整数,未带正负号COLORREF:32-bit数值,代表一个颜色值DWORD:

adonisvc的专栏 884

利用 Openocd 和 FT2232H 实现 ARMv8(Coretex-A53)高效调试方案

本文详细介绍了如何利用开源工具OpenOCD与高性能USB转接芯片FT2232H,构建一套针对ARMv8架构(如Cortex-A53)的高效、低成本调试方案。内容涵盖从环境搭建、驱动配置、核心调试架构解析到实战问题排查的全过程,帮助开发者实现对多核处理器的透明、可控调试,是嵌入式Linux及底层开发的实用指南。

weixin_29163581的博客 280

展锐双摄帧同步实战:从配置到调试的完整避坑指南

本文深入剖析了在展锐平台上实现双摄帧同步的完整流程与核心技术。详细对比了硬件帧同步与软件帧同步的差异、应用场景及核心挑战,提供了从XML配置、驱动层适配到调试验证的实战指南。重点强调了硬件帧同步必须与固定帧率强绑定这一关键避坑点,并分享了针对景深虚化等场景的同步质量验证方法及长稳测试策略。

kiwi8的博客 402

Windows的数据类型

一、对c基本数据类型定义了便于识别的别名: 1 typedef unsigned long DWORD; 2 typedef int BOOL; 3 typedef unsigned char BYTE; 4 typedef unsigned short WORD; 5 typedef float FLOAT; 6 ...

dfce62214326的博客 220

别再死磕V1了!手把手教你用WPS Web Office V3 SDK快速集成(附Java Demo避坑指南)

本文详细介绍了如何从WPS Web Office V1迁移到V3版本,重点讲解了V3在性能、安全性和扩展性上的优势,以及Java开发者如何快速集成V3 SDK。文章包含核心功能实现、高级功能适配(如Solon框架)和常见问题排查指南,帮助开发者高效完成迁移并避免常见陷阱。

weixin_27215337的博客 336

windows编程01-Windows数据类型

windows编程01-Windows数据类型         Windows使用typedef或#define定了很多新的数据类型,前面几节中我们已经领略到了。它们虽然多,但是都有规律可循,很多都是对C/C++中数据类型的简单加工,而且很容易“见名知意”。要想学习Windows编程,必须要了解常用的数据类型。 值得注...

FairLikeSnow的博客 539

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Window API (一)数据类型

Windows数据类型的命名都很有规律。     基本数据类型包括 BYTE、CHAR、WORD、SHORT、DOWRD、INT 等。     指针类型的命令方式一般是在其指向的数据类型前加“LP”或“P”,比如指向 DWORD的指针类型为“LPDWORD”和“PDWORD”。各种句柄类型的命令方式一般都是在对象名前加“H”。Windows 系统中有很多对象,所有表示一个对象的数据类型都是

阿修罗道 3049

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

windows API的数据类型

BOOL 布尔型变量 BYTE 字符类型(8位) CHAR 8比特字节(ANSI) CONST 常量,相当于...

Ghjhfssfgk的博客 338

Windows 编程中的数据类型(转自:维基百科)

LPVOID 这种类型是指“指向void类型的指针。这是因为ANSI-C的标准中有这种void类型的指针,用来指向任意类型。这更像是一个预留类型,尽量不要使用。如果遇见LPVOID类型的参数,需要给它传一个NULL参数。DWORD,WORD,BYTE 这几种类型无论在什么类型的平台上,都有相同的固定长度。 DWORD的长度为无符号的32位整型,其前缀为dw。 WORD的长度为无

jubincn的专栏 1842

windows编程常用数据类型

Windows数据类型命名规律    基本数据类型包括:BYTE、CHAR、WORD、SHORT、INT等。 指针类型的命令方式一般是在其指向的数据类型前加“LP”或“P”,比如指向DWORD的指针类型为“LPDWORD”和“PDWORD”   各种句柄类型的命名方式一般都是在对象名前加“H”,比如位图(BITMAP)对应的句柄类型为“HBITMAP”。   无符号类型一般是以“U”开头,比如“INT”是符号类型,“UINT”是无符号类型。   根据这些命名规律以及...

满城花絮 1362

vc类型列表

typedef char* LPSTR;typedef const char* LPCSTR;typedef unsigned long DWORD;typedef int BOOL;typedef unsigned char BYTE;typedef unsigned short WORD;typedef int INT;typedef unsigned int UINT;typedef lon

xiaogang_513的专栏 489

匈牙利命名法

;----------------------------------------------------- ;匈牙利命名法 ;----------------------------------------------------- b ;表示byte w ;表示word dw ;表示dword h ;表示句柄 lp ;表示指针 sz ;表...

weixin_30627381的博客 87

WINDOWS程序设计之Windows Data Types

The data types supported by Microsoft® Windows® are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements. The following table contains the following types: charac

ctrigger的专栏 171

WINDEF.h 变量类型

WORD 16位无符号整数 LONG 32位有符号整数 DWORD 无符号长整数 HANDLE 用作句柄的32位整数 HWND 用窗口句柄的32位整数 UINT 32位无符号整数 BOOL BYTE 8位无符号字符 PSTR 指向字符串的32位指针 PCSTR 指向字符串的常量指针 转载于:https://www.c...

weixin_30915275的博客 167

数据类型及Windows句柄

BYTE 8位 unsigned char CHAR 8位 char BOOL 16位 int DWORD 32位  unsigned long int HANDLE 一般句柄 HWND 32位 long int LONG 32位 long int LPCSTR 指向字符串的 const 指针 LPSTR 指向字符串的指针 SHORT 16位短整数 UINT 32位无符号长整数

Frank的专栏 777

windows数据类型与对应基本类型对照表

windows编程中的数据类型 对应的基本类型 说明 BOOL int 布尔值,注意,该类型与值为true/false的C++类型bool不同。 BSTR unsigned short * 32位字符指针 BYTE unsigned char 8位无符号整数 COLORREF unsigned long 用作颜色值的32位值 D

ljianhui的专栏 2624

句柄、Windows数据类型

句柄、Windows数据类型 WORD:16位无符号整型数据 DWORD:32位无符号整型数据(DWORD32) DWORD64:64位无符号整型数据 INT:32位有符号整型数据类型 INT_PTR:指向INT数据类型的指针类型 INT32:32位符号整...

311
下一篇: C++位运算
Vivian_Chang
博客等级 码龄14年 2粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值