C: _access_s () не может найти папку - PullRequest
0 голосов
/ 03 декабря 2018

Это структура местоположения, в котором выполняется приложение: enter image description here

Цель приложения - проверить, существует ли папка с именем Folder.Это функция, которая отвечает за это:

bool Initialize(const char * c_pszFolder)
{
    if (_access_s(c_pszFolder, 00) != 0)
    {
        printf("Error! Folder doesn't exist.");
        return false;
    }

    printf("Success! Folder does exist.");
    return true;
}

Вот как эта функция вызывается:

int main()
{
    Initialize("Folder");
}

Согласно документации, второй аргумент _access_s() - это числодела, которое вы хотите проверить.В моем случае я бы использовал: 00 Existence only..Хотя, когда я запускаю приложение, приложение возвращает false, что действительно сбивает с толку из-за результатов отладки: enter image description here

После попытки получить дополнительную информацию с помощью _get_errno() I 'мы получили ошибочное значение 2, которое означает: ENOENT No such file or directory.Но папка существует.

1 Ответ

0 голосов
/ 03 декабря 2018

Просто измените свой текущий каталог следующим образом

Project | Properties | Select Configuration | Configuration Properties | Debugging | Working directory

...