如何修复fwrite无法在C中写入文件?

时间:2019-10-28 06:37:16

标签: c binaryfiles file-handling

我正在尝试使用fwrite()函数在C中使用二进制模式将记录写入文件,但是该文件仍然为空,但是已成功创建并打开。

我已经尝试使用不同的方式打开文件。 由于技术限制,我正在使用Turbo C3编译器。

void Register () {
  FILE *User_File;
  User_File = fopen ("C://TURBOC3//SOURCE//USERDATA.DAT", "wb");
  active_user = _register_user();  //active user is of type struct _acc
  fwrite (&active_user, sizeof (struct _acc), 1, User_File);
  fclose (User_File);
}

预期要写入文件的数据 即使多次尝试,文件仍为空

_acc的结构如下

struct _acc {
  char      *h_name;
  char       sex;
  struct date dob;
  char      *address;
  long int  mobile;
  int           pin;
  long int  accno; 
  double        account_bal;
  struct date acc_open_date;
  char       *username;
  char       *password;
  int           security_Q;  //used in case of forgot password
  char       *security_A;  //used in case of forgot password
  int       block_status;
};
typedef struct _acc acc;

_register_user()的声明如下:

acc _register_user ();
// This function returns a variable of type acc

0 个答案:

没有答案