永发信息网

C++里 得到系统盘符的函数

答案:2  悬赏:50  手机版
解决时间 2021-11-27 05:43
  • 提问者网友:那叫心脏的地方装的都是你
  • 2021-11-27 02:43
C++里 得到系统盘符的函数
最佳答案
  • 五星知识达人网友:由着我着迷
  • 2021-11-27 03:37
C++里得到系统盘符的函数:
可以用GetLogicalDriveStrings()。
函数原型:DWORD GetLogicalDriveStrings(DWORD nBufferLength,LPTSTR lpBuffer);
它的功能是将计算机上所有的盘符存入字符串缓冲区中。
第一个参数是字符串缓冲区大小,第二个是字符串缓冲区。
假如你的电脑上有C,D两个硬盘盘符,则它能得到一个字符串是:
'C',':','\',' ','D',':','\',' ',' '
即:C:\D:\
返回值:
如果函数成功结束,返回值是获得的字符串长度,以字节为单位,不包括最后的一个空字符,好像上面的字符串获得的长度就是8;硬盘盘符的个数自乘以4就是了;记住:一个ANSI-ASCII码的空字符是一个字节,而一个Unicode码的空字符是两个字节.如果这个缓冲区不够大,返回值会比nBufferLength大,这是缓冲区要求去获得全部硬盘盘符的原因.如果函数失败,这个返回值是0;用GetLastError可以捕获这个错误信息!
全部回答
  • 1楼网友:独钓一江月
  • 2021-11-27 04:36
可以用GetLogicalDriveStrings()。
函数原型:DWORD GetLogicalDriveStrings(DWORD nBufferLength,LPTSTR lpBuffer);
它的功能是将计算机上所有的盘符存入字符串缓冲区中。
第一个参数是字符串缓冲区大小,第二个是字符串缓冲区。
假如你的电脑上有C,D两个硬盘盘符,则它能得到一个字符串是:
'C',':','\',' ','D',':','\',' ',' '
即:C:\D:\
返回值:
如果函数成功结束,返回值是获得的字符串长度,以字节为单位,不包括最后的一个空字符,好像上面的字符串获得的长度就是8;硬盘盘符的个数自乘以4就是了;记住:一个ANSI-ASCII码的空字符是一个字节,而一个Unicode码的空字符是两个字节.如果这个缓冲区不够大,返回值会比nBufferLength大,这是缓冲区要求去获得全部硬盘盘符的原因.如果函数失败,这个返回值是0;用GetLastError可以捕获这个错误信息!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯