Не работает fopen, скажите что не так плз - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Имеется программа по заданию: Дан текст. Написать программу печати всех строк, которые короче 10 символов. Программа на C. Программу я написал:
#include <stdio.h>
#include <conio.h>

void main()
{
//Объявление переменных, посредников
FILE *aa,*bb;
int simvoli=0;
int nomerstrok=1;
int number[300];
int zap=0;
char c;
char adress[50];
bool flag=false;
 
printf("Print a path to your file:\n");
scanf("%s",adress);
 
/*Открываем канал связи с файлом
по адресу adress(введен с клавиатуры) для r - чтения*/
aa=fopen("C:\Text.txt","r");
 
//Помещаем в C след. символ и проверяем его на неравенство EOF
while ((c=fgetc(aa))!=EOF)
{
simvoli++;
if (c=='\n') //Если текущий символ - переход на новую строку...
    {
    if (simvoli<10)
        {zap++; number[zap]=nomerstrok;}
    nomerstrok++; //...увеличим номер текущей строки на 1
    simvoli=0;
    }
}
 
fclose(aa);
bb=fopen("C:\Text.txt","r");
simvoli=0;
nomerstrok=1;
zap=1;
 
//Теперь печатаем каждую строку, номер которой лежив в number[]
while ((c=fgetc(bb))!=EOF)
{
if (nomerstrok==number[zap])
    {flag=true; zap++; printf("\n");}
if (flag==true)
    printf("%c",c);
if (c=='\n')
    {flag=false; nomerstrok++;}
}
getch();
}
Но в aa вечно кладется NULL. Хотя файл Text.txt на диске есть, и не пустой. Какова причина? Не работает ни на Turbo C++, ни в VS2008...

Решение задачи: «Не работает fopen, скажите что не так плз»

textual
Листинг программы
    /* Открываем канал связи с файлом по адресу address
       (введен с клавиатуры) для r - чтения*/
    aa = fopen(address, "r");

Объяснение кода листинга программы

  1. Объявляется переменная типа int с именем aa.
  2. Значение переменной address берется с клавиатуры.
  3. В качестве первого аргумента функции fopen передается адрес файла (строка), в качестве второго аргумента - r (чтение).
  4. Результат выполнения функции fopen сохраняется в переменной aa.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы