LARGE_INTEGER解析

LARGE_INTEGER解析 驱动开发中,我们除了可以使用LONGLONG这个表示64位结构的数据外。还可以使用一个叫做LARGE_INTEGER的数据结构来表示64位数据。它的定义如下[cpp] viewplain copytypedef union _LARGE_INTEGER {      struct {          ULONG LowPart;          LONG HighPart;      }…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

  驱动开发中,我们除了可以使用LONGLONG这个表示64位结构的数据外。还可以使用一个叫做LARGE_INTEGER的数据结构来表示64位数据。它的定义如下

[cpp] 
view plain  
copy

  1. typedef union _LARGE_INTEGER {  
  2.     struct {  
  3.         ULONG LowPart;  
  4.         LONG HighPart;  
  5.     } DUMMYSTRUCTNAME;  
  6.     struct {  
  7.         ULONG LowPart;  
  8.         LONG HighPart;  
  9.     } u;  
  10. #endif //MIDL_PASS  
  11.     LONGLONG QuadPart;  
  12. } LARGE_INTEGER;  

    

    LARGE_INTEGER是一个联合体。设计的非常巧妙。联合体中的3个元素可以被认为是LARGE_INTEGER的3个定义

(1)DUMMYSTRUCTNAME由2部分组成。一个是低位的32位整数LowPart。另一个就是高位的整数咯。在小端的情况下。低32位数字在前。高32位在后。

如果将这个64位整数赋值100.可以这么写

[cpp] 
view plain  
copy

  1. LARGE_INTEGER value;  
  2. value.LowPart = 100;  
  3. value.HighPart = 0;  

(2)u由2部分组成。一个是低位的32位整数LowPart。另一个就是高位的整数咯。在大端的情况下。高32位数字在前。低32位在后。

如果将这个64位整数赋值100.可以这么写

[cpp] 
view plain  
copy

  1. LARGE_INTEGER value;  
  2. value.u.LowPart = 100;  
  3. value.u.HighPart = 0;  

(3)当LARGE_INTEGER 等价于LONGLONG的时候。如果将这个64位整数赋值100.可以这么写

[cpp] 
view plain  
copy

  1. LARGE_INTEGER value;  
  2. value.QuadPart = 100;  

   

     文章转载自:https://blog.csdn.net/nowayings/article/details/44812201

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160073.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • windows route add添加静态路由_centos route add

    windows route add添加静态路由_centos route addWindowsrouteaddcommandfailed出现此错误需要管理员安装openvpn和管理员运行vpngui

    2022年8月11日
    14
  • 自动化运维平台分析「建议收藏」

    自动化运维平台分析「建议收藏」在项目上线完成后,业务系统或平台自然就转入了运维管控期,而在运维期两个重点,一个就是运维流程的标准化和规范化,另外一个就是运维工作本身的自动化。对于运维自动化将成为后续我重点关注的一个内容,因为本身我们DevOps实践也需要这方面的积累。对于运维自动化,传统我们可能是编写自动化的运维脚本,然后是手工或定时的执行运维脚本完成整个自动化执行过程和运维例行检查。而今天要谈自动化运维平台,里面一个重点就是基于我们面对的运维场景,如何将运维操作或任务进行细粒度分解,然后再对运维操作进行组合和编排。为…

    2022年5月17日
    37
  • python中callback_python安装后怎么打开

    python中callback_python安装后怎么打开刚接触Python的时候,简单的异常处理已经可以帮助我们解决大多数问题,但是随着逐渐地深入,我们会发现有很多情况下简单的异常处理已经无法解决问题了,如下代码,单纯的打印异常所能提供的信息会非常有限。deffunc1():raiseException(“–func1exception–“)defmain():try:func1()exceptExceptionase:printe…

    2025年5月28日
    4
  • dedecms后台系统基本参数标题

    dedecms后台系统基本参数标题

    2021年10月7日
    45
  • 小白入门NAS—快速搭建私有云教程系列(一)[通俗易懂]

    小白入门NAS—快速搭建私有云教程系列(一)[通俗易懂]什么是NAS在日常的工作生活中,我们有大量的资料、文件需要存储在电脑或者其他终端设备中,但是这种方式需要电脑配备高容量的硬盘,而且需要随时随地的带着,这样是不是很麻烦?那么,今天,我来介绍一种家庭私有云—NAS,通过NAS,我们可以随时随地的通过网页端的方式去访问我们已经存储在NAS里面的文件。那么,什么是NAS?我们先来看下官方一点的回答。NAS(NetworkAttachedSt…

    2022年6月17日
    31
  • git切换远程分支命令_git查看对应的远程分支

    git切换远程分支命令_git查看对应的远程分支git切换远程分支将远程git仓库里的指定分支拉取到本地(本地不存在的分支)当我想从远程仓库里拉取一条本地不存在的分支时:gitcheckout-b本地分支名origin/远程分支名例如:切换远程分支gitcheckout-breleaseorigin/release-9.4###原文默认,git项目只有一个分支,就是master,我们当然可以在本地创建多个分支,并推送到远程git管理平台上,或者将远程git管理平台上的其他..

    2022年9月21日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号