需要帮助我的图书馆项目有会员问题

时间:2019-01-25 14:14:05

标签: c

似乎出了点问题。我已经完成了一个图书馆项目,但是某些功能似乎出现了故障 例如:当我选择我的会员列表(如下所示)时,它存在代码。 在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 :(得分:1)

成员列表中,您是否检查 fopen 是否运作良好? fptr 可能为NULL


addmember()中的几句话:

  • addmember 在其主体末尾进行调用,这是无条件的递归

  • 对于您fopen("username.txt", "w");的每次递归调用,都没有用,但是您永远不会关闭文件

  • 只能读取
  • 一个一个字符,这很可疑