在调用GetDiskFreeSpaceEx()获取磁盘空间时,由于参数是ULARGE_INTEGER(64位整数),所以普通的“加减乘除”并不支持(是没有实现),因此我们采用其他办法来实现,先来看下ULARGE_INTEGER的结构定义:

typedef union _ULARGE_INTEGER {struct {DWORD LowPart;DWORD HighPart;} ;struct {DWORD LowPart;DWORD HighPart;} u;ULONGLONG QuadPart;
} ULARGE_INTEGER, *PULARGE_INTEGER;

在一次应用中,需要将返回的空间大小转换成以"GB"为单位的,所以写了这样的宏定义:

#define GB(x) ((x.HighPart << 2) + ((DWORD)x.LowPart) / 1024.0 / 1024.0 / 1024.0)

当然,你也可以选择将x两边加上括号即“#define GB(x) (((x).HighPart << 2) + ((DWORD)(x).LowPart) / 1024.0 / 1024.0 / 1024.0)"

ULARGE_INTEGER运算相关推荐

  1. 不占用多余空间实现值的交换——异或运算

    首先什么是异或运算? ^规则: 0 ^ x = x x ^ x = 0 那么 a 与 b 交换值如何做呢???三行代码

  2. python 位运算与等号_Python 运算符

    和大多数语言一样,Python也有很多运算符,并且运算符跟其他语言的运算符大同小异接下来一一介绍: 算术运算符: 运算符描述实例 +加 - 两个对象相加a+b的输出结果是30 -减 - 得到复数或者一 ...

  3. C++ OJ 中多行数据输入(大小写转换、通过移位运算实现2的n次方、多组输入,每行输入数量不一样)

    1. 多组输入,输出每行最大值 while(cin>>a>>b) 主要解决的是两个为一组的多组数据输入,当一次只输入一个数据时就用 while(cin>>a) 输入 ...

  4. OpenCV 笔记(06)— Mat 结构、像素值存储方法、创建 Mat 对象各种方法、Mat 对象的运算

    数字图像中的每个点都称为像素(对于图像元素),并且每个像素可以存储一个或多个值,这取决于它是否是仅存储一个值的黑白图像(也称为二进制图像,比如只存储0或1),还是存储两个值的灰度图像,或者是存储三个值 ...

  5. NumPy — 创建全零、全1、空、arange 数组,array 对象类型,astype 转换数据类型,数组和标量以及数组之间的运算,NumPy 数组共享内存

    NumPy 简介 一个用 python 实现的科学计算包.包括: 1.一个强大的 N 维数组对象 Array : 2.比较成熟的(广播)函数库: 3.用于整合 C/C++ 和 Fortran 代码的工 ...

  6. 矩阵的卷积核运算(一个简单小例子的讲解)深度学习

    卷积运算:假设有一个卷积核h,就一般为3*3的矩阵: 有一个待处理矩阵A: h*A的计算过程分为三步 第一步,将卷积核翻转180°,也就是成为了 第二步,将卷积核h的中心对准x的第一个元素,然后对应元 ...

  7. 3D Cube计算引擎加速运算

    3D Cube计算引擎加速运算 华为达芬奇架构的AI芯片Ascend910,同时与之配套的新一代AI开源计算框架MindSpore. 为什么要做达芬奇架构? AI将作为一项通用技术极大地提高生产力,改 ...

  8. 计算机组成原理-第二章 数据表示与运算

    计算机组成原理-第二章 数据表示与运算 一.数据的表示 1.数值型数据的表示(重点难点) 1.1数值型数据的表示--进位制 1.2数值型数据表示-码制 1.3数值型数据的表示--定点数 1.4数值型数 ...

  9. Java基础语法运算和控制符

    1 类型转换 在Java中,一些数据类型之间是可以相互转换的.分为两种情况:自动类型转换和强制类型转换. 1.1 隐式转换(理解) ​ 把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变 ...

最新文章

  1. 如何使用小数据集对大模型进行微调(迁移学习)-微迁移
  2. mysql unescape解码_PHP解密Unicode及Escape加密字符串
  3. termcap-1.3.1的configure.in文件逐行分析
  4. DOCKER容器内中文显示乱码
  5. html输入表,HTML 表单输入
  6. 如果有一个工具可以帮助你将你的代码可视化,你需要吗?
  7. 行业分类代码一览表2022-MySQL版
  8. 重磅 | 死磕 Elasticsearch 方法论认知清单(2021年国庆更新版)
  9. 联想服务器重装系统快捷键,联想电脑重装系统按什么快捷键
  10. python-shixian考拉兹猜想
  11. 【JZOJ6354】最短路(tiring)
  12. 【为您的 Android 应用添加图片】
  13. vue实现ZKT(中控)身份证读卡器读卡功能
  14. VC常见的108个问题
  15. 15.用爬虫测试网站
  16. 常见文件魔数(幻数)总结
  17. 2W字长文吐血整理 Docker云原生
  18. linux 中 lrwxrwxrwx是什么意思?
  19. 视频压缩【亲测可用】
  20. “夏邑女首富”刘敏创建的敏涵控股被质疑:坚持做难而正确的事

热门文章

  1. 分类法过时了吗?【ZZ】
  2. kotlin编程语言_Kotlin初学者编程基础
  3. 使用Google Cloud Platform分散您的应用程序
  4. 协作机器人 ai算法_如果我们希望人工智能为我们服务而不是不利于我们,我们需要协作设计...
  5. 分表后需要注意的二三事
  6. 读取字符串中的数字和小数
  7. 列表、元组、字典、集合的定义、操作与综合练习
  8. 牛客网 牛客小白月赛1 H.写真がとどいています
  9. 团队作业3——需求改进系统设计
  10. uva 10245 The Closest Pair Problem_枚举