нужна помощь В проекте «Моя библиотека» есть проблема с участниками - PullRequest
0 голосов
/ 25 января 2019

кажется, что-то не так. Я сделал проект библиотеки, но некоторые функции работают неправильно например: когда я выбираю свой список участников (показанный ниже), существует код. в версии c.

void addmember()
{
system("cls");
  // creating a FILE variable
  FILE *fptr;

  // creating a character variable
  char ch;

  // open the file in write mode
  fptr = fopen("username.txt", "w");

  // take user input
  printf("Enter your name: ");

ch = getchar();


    printf("Save any more?(Y / N):");
    if(getch()=='n')
        mainmenu();
    else
        system("cls");
       addmember();
}

void memberlist(){
    char ch;
     FILE *fptr;
    // open the file in read mode
  fptr=fopen("username.txt", "r");

  // display the content of the file
  printf("\nFile content:\n");
  while( (ch = getc(fptr)) != EOF ) {
    printf("%c", ch);
  }

  printf("\nEnd of file\n");

  // close file
  fclose(fptr);

  return 0;
}

1 Ответ

0 голосов
/ 25 января 2019

In memberlist Вы проверяете, хорошо ли работает fopen ? Вероятно, fptr равно NULL


Несколько замечаний в addmember () :

  • addmember называть себя в конце своего тела, безусловно, это бесконечная рекурсия

  • за каждый рекурсивный вызов вам fopen("username.txt", "w"); и это даром, но вы никогда не закрываете файл

  • только один символ читается для имени, это подозрительно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...