Fread / fwrite意外行为

时间:2018-02-26 18:49:38

标签: fwrite fread

我在当前目录中创建了一个文件'meta.dat',并希望下面的代码为我提供此输出

  

角色B

     

读取的项目数量

 int main() {
  FILE* fp = fopen("meta.dat", "wb");
  char j = 'B';
  fwrite(&j, sizeof(j), 1, fp);
  fclose(fp);
  FILE* fp1 = fopen("meta.dat", "rb");
  char i = '\0';
  int n = fread(&i, sizeof(i), 1, fp1);
  printf("The character %c\n", &i);
  printf("Number of items read %d\n", &n);
}

然而,我得到的是我的控制台中的这个输出(我使用Windows):

  

角色&

     

读取的项目数量6422304

代码有什么问题?幕后发生了什么,为什么我会看到这种奇怪的输出?

0 个答案:

没有答案