Hi,
I've been working on a project that needs to list all the drives on a computer (it's kind of a file explorer, but without using the standard one provided by windows). I've searched and found the function GetLogicalDrives(), which does exactly what I want.
However, the return value is a DWORD of which bit-position 0 represents the existince of drive A:/, bit-position 1 of B:/ and so on. I've found a few forum posts about bit-shifting, with which I have no experience.
This is what I got so far:
int main() {
int bits[32]; // Array to put in the seperate bits of the DWORD
DWORD input = 9; // This should give 10010000000000000000000000000000
int i = 0; // Counter
/* Looping through every bit of the DWORD: */
for (i = 0; i < 32; i++) {
bits[i] = input >> i;
printf("bits[%d] = %d\n", i, bits[i]);
}
}
But it isn't give the correct output. Does anyone know how to solve my problem :)?
Does anyone know how to do this?
Thanks in advance,
~G