Ошибка Expected Expression - C (СИ)
Формулировка задачи:
Помогите, пожалуйста, новичку найти ошибку
Решение задачи: «Ошибка Expected Expression»
textual
Листинг программы
int file() { FILE *FILE, *fp; int numFiles=0; int numLines=0; char input_f[100]; char c; fp=fopen("/Users/..../Desktop/test.txt","w+"); ++numFiles; //считаем кол-во файлов printf("Укажите путь к файлу в формате /Users/<Имя компьютера>/Desktop/..\n"); //путь к файлу через консоль scanf("%s", input_f); FILE = fopen(input_f, "r"); if (FILE == NULL){ //проверка printf("Файл не найден \n"); } else{ printf("Файл найден!\n"); } while ((c = fgetc(FILE)) != EOF) { // Читаем символ if (c == '\n') { // Подсчитываем число символов перевода строки ++numLines; // Увеличиваем число строк } } fprintf(fp,“%d”, numLines); fclose(fp); main(); return 0; }
Объяснение кода листинга программы
- Объявлены две переменные типа FILE и fp, которые будут использоваться для работы с файлами.
- Переменная numFiles увеличивается на единицу, так как создается новый файл.
- Выводится сообщение с просьбой указать путь к файлу.
- Путь к файлу считывается в массив input_f при помощи функции scanf.
- Функция fopen открывает файл с указанным путем для чтения.
- Если файл не может быть открыт, выводится сообщение об ошибке.
- В противном случае выводится сообщение о том, что файл успешно открыт.
- Используя цикл while и функцию fgetc, происходит чтение символов из файла.
- Если считанный символ является символом новой строки (\n), увеличивается счетчик numLines.
- Число строк записывается в файл, который был открыт в начале функции при помощи функции fprintf.
- Функция fclose закрывает файл.
- Вызывается функция main, что позволяет запускать данную функцию в качестве независимой функции.
- Возвращается ноль, что означает успешное выполнение программы.
- Компилятор выдает ошибку
Expected Expression
из-за некорректного использования функции scanf для считывания строки. - Компилятор выдает ошибку
Use of undeclared identifier
из-за неинициализированной переменной c. - Компилятор выдает ошибку
Control may reach end of non-void function
из-за того, что функция main вызывается в конце программы, но не возвращает значение. - Компилятор выдает ошибку
Too many arguments
из-за неправильного использования функции fprintf. - Компилятор выдает ошибку
Format string is not a valid format specification
из-за неправильного форматирования вывода в функции fprintf. - Компилятор выдает ошибку
Invalid conversion between pointer and integer
из-за попытки присвоить значение типа int переменной типа FILE. - Компилятор выдает ошибку
Unused parameter
из-за того, что функция main вызывается без аргументов, но в ее объявлении есть необязательные параметры.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д