здесь, если fopen не удается, нам еще нужно вызвать fclose() для некоторой очистки?
Ответ 1
Его простой друг, я имею в виду, просто представьте себе... Вам нужно выключить компьютер, даже если он не загружается....: D
Точно так же, как вам не нужно закройте файл, который вы на самом деле никогда открыт.
Некоторые дополнительные советы: fclose используется только ради освобождения файла, чтобы он мог использоваться каким-либо другим приложением или модулем, поскольку он не является ресурсом, доступным для совместного использования.
Кроме того, fclose означает, что теперь вы освобождаете указатель, который используете, и можете использовать его для любого другого файла.
Ответ 2
Нет, поскольку fopen() возвращает 0, что является недопустимым дескриптором файла. fclose() может даже сбой, если вы попытаетесь это сделать.
Ответ 3
Нет. Это не обязательно. Во-первых, вы ничего не открывали, поэтому вам не нужно закрывать его.
Ответ 4
Нет. Вы не можете закрыть двери, которые не открываются. Если преуспеть, fopen возвращает указатель на открытый файл и имеет смысл передать это значение в fclose.