[C++] Программа выдает ошибку.

Начинающий
Статус
Оффлайн
Регистрация
7 Апр 2018
Сообщения
8
Реакции[?]
0
Поинты[?]
0
Выдает ошибку:
использована неинициализированная локальная переменная "fs"
использована неинициализированная локальная переменная "sz"
Код:
Код:
unsigned int drive_type = GetDriveType(NULL);

    char VolumeNameBuffer[100];
    char FileSystemNameBuffer[100];
    DWORD sz, fs;
    unsigned long drive_sn;
    GetVolumeInformationA(
        NULL,
        VolumeNameBuffer,
        100,
        &drive_sn,
        (LPDWORD)sz,
        (LPDWORD)fs,
        FileSystemNameBuffer,
        100
    );
    cout << "Volume serial number:\t";
    if (drive_sn == 1018821877)     //сравниваем серийный номер
        cout << "correct" << endl;
    else
        cout << "invalid" << endl;
    cout << "Drive type:\t";
    if (drive_type == DRIVE_REMOVABLE)
        cout << "correct" << endl;
    else
        cout << "invalid" << endl;
getch();
Помогите пофиксить!
 
masta copypasta
Участник
Статус
Оффлайн
Регистрация
2 Июн 2017
Сообщения
683
Реакции[?]
253
Поинты[?]
0
по факту: отключи проверку безопасности( создание кода -> проверка безопасности )
 
MAYBE BABY
Начинающий
Статус
Оффлайн
Регистрация
2 Ноя 2017
Сообщения
99
Реакции[?]
21
Поинты[?]
0
по факту: отключи проверку безопасности( создание кода -> проверка безопасности )
он забыл инициализировать переменные fs и sz
 
по факту: отключи проверку безопасности( создание кода -> проверка безопасности )
Тоесть не присвоил им переменные.
 
masta copypasta
Участник
Статус
Оффлайн
Регистрация
2 Июн 2017
Сообщения
683
Реакции[?]
253
Поинты[?]
0
он забыл инициализировать переменные fs и sz
почитай, потом говори:
Пожалуйста, авторизуйтесь для просмотра ссылки.

 
он забыл инициализировать переменные fs и sz
 

Тоесть не присвоил им переменные.
переменным присваивать переменные?
бред же несешь;)
 
Начинающий
Статус
Оффлайн
Регистрация
7 Апр 2018
Сообщения
8
Реакции[?]
0
Поинты[?]
0
Последнее редактирование:
masta copypasta
Участник
Статус
Оффлайн
Регистрация
2 Июн 2017
Сообщения
683
Реакции[?]
253
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
7 Апр 2018
Сообщения
8
Реакции[?]
0
Поинты[?]
0
MAYBE BABY
Начинающий
Статус
Оффлайн
Регистрация
2 Ноя 2017
Сообщения
99
Реакции[?]
21
Поинты[?]
0
Участник
Статус
Оффлайн
Регистрация
23 Фев 2017
Сообщения
613
Реакции[?]
507
Поинты[?]
0
Не уверен, что каст DWORD к LPDWORD работает у тебя правильно. Кроме того, что переменным надо присвоить 0, так же надо использовать & вместо (LPDWORD). Чтобы получилось так:
GetVolumeInformationA( NULL, VolumeNameBuffer, 100, &drive_sn, &sz, &fs, FileSystemNameBuffer, 100 );
 
Начинающий
Статус
Оффлайн
Регистрация
7 Апр 2018
Сообщения
8
Реакции[?]
0
Поинты[?]
0
Не уверен, что каст DWORD к LPDWORD работает у тебя правильно. Кроме того, что переменным надо присвоить 0, так же надо использовать & вместо (LPDWORD). Чтобы получилось так:
Благодарю!
 
Сверху Снизу