Как в языке СИ проверить существует ли файл без создания нового?

Для проверки существования файла в языке программирования C можно использовать функции из стандартной библиотеки <stdio.h>. В частности, функция fopen может быть использована для открытия файла с возможностью проверки его существования без создания нового файла.

Прежде чем использовать функцию fopen для проверки существования файла, необходимо создать указатель на файл типа FILE и присвоить ему значение NULL. Затем вызов функции fopen с режимом доступа "r" позволит открыть файл только для чтения, при этом если файл не существует, функция не создаст его и вернет NULL.

Пример кода для проверки существования файла:

#include <stdio.h>

int main() {
    FILE *file = NULL;
    char filename[100];

    printf("Введите имя файла для проверки: ");
    scanf("%s", filename);

    file = fopen(filename, "r");
    if (file == NULL) {
        printf("Файл не существует.n");
    } else {
        printf("Файл существует.n");
        fclose(file);
    }

    return 0;
}

Этот пример позволяет пользователю ввести имя файла, после чего программа проверяет его существование, открывая файл в режиме "r". Если файл существует, программа выводит сообщение "Файл существует", иначе выводит сообщение "Файл не существует".

Обратите внимание, что после проверки файла, если он существует, правильным использованием будет закрытие файла с помощью функции fclose, чтобы освободить ресурсы, связанные с открытием файла. Также в коде можно добавить проверку на ошибку при открытии файла, чтобы обработать возможные ошибки и предупредить пользователя.