当前位置:编程学习 > VB >>

字节的转换



applenele
初级粉丝1
ULARGE_INTEGER nFreeBytesAvailable;
ULARGE_INTEGER nTotalNumberOfBytes; 
ULARGE_INTEGER nTotalNumberOfFreeBytes; 
if (GetDiskFreeSpaceEx("C:", 
&nFreeBytesAvailable, 
&nTotalNumberOfBytes, 
&nTotalNumberOfFreeBytes)) 

TCHAR chBuf[1000]; 
wsprintf(chBuf,"当前用户可用:%I64d总大小:%I64d兆,当前可用空间:%I64d\r\n", nFreeBytesAvailable,nTotalNumberOfBytes, nTotalNumberOfFreeBytes); SetDlgItemText(hwnd,IDC_EDT1,chBuf); 
怎么把得到的 字节单位为B转换成GB;;

C IDC --------------------编程问答-------------------- nTotalNumberOfBytes / 1024 / 1024 / 1024 --------------------编程问答--------------------  既然得到了以B为单位的数值,把你的nFreeBytesAvailable,nTotalNumberOfBytes, nTotalNumberOfFreeBytes这几个变量除以1073741824(即:1024×1024×1024),不就是GB的数值了吗?

看你的代码,是C++的吧,怎么发VB版来了呢。
B换算成GB为单位的数值后,应该不是整数了,这三个结果应该保存入浮点类型的中间变量中去。
并且输出格式中的%I64d应该换成相应的浮点格式标记。
--------------------编程问答-------------------- 除
补充:VB ,  API
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,