C-文件处理-读写整数

时间:2020-02-23 14:31:54  来源:igfitidea点击:

在本教程中,我们将学习使用C编程语言在文件中读写整数。

在上一教程中,我们已经学习了如何在C中的文件中读写字符。
在本教程中,我们将介绍getw()putw()函数以在文件中读取和写入整数。

getw和putw I/O函数

我们使用getw()和putw()I/O函数分别从文件中读取一个整数并将一个整数写入一个文件。

getw的语法:

int num = getw(fptr);

其中," fptr"是文件指针。

putw的语法:

putw(n, fptr);

其中," n"是我们要在文件中写入的整数,而" fptr"是文件指针。

用C编写程序以创建一个新文件,并将用户输入的整数保存在文件中

为此,我们将首先创建一个" FILE"指针并创建一个名为" integers"的文件。
您可以使用任何其他喜欢的名字。

然后,我们将使用putw()函数在文件中写入整数。
输入-1时,我们终止读取并关闭文件。

之后,我们可以使用getw()函数读取文件数据,直到我们点击EOF(文件结束)字符并将其显示在控制台中。

#include <stdio.h>

int main(void) {
  //creating a FILE variable
  FILE *fptr;
  
  //integer variable
  int num;
  
  //open the file in write mode
  fptr = fopen("integers", "w");
  
  if (fptr != NULL) {
    printf("File created successfully!\n");
  }
  else {
    printf("Failed to create the file.\n");
    //exit status for OS that an error occurred
    return -1;
  }
  
  //enter integer numbers
  printf("Enter some integer numbers [Enter -1 to exit]: ");
  while (1) {
    scanf("%d", &num);
    if (num != -1) {
      putw(num, fptr);
    }
    else {
      break;
    }
  }
  
  //close connection
  fclose(fptr);
  
  //open file for reading
  fptr = fopen("integers", "r");
  
  //display numbers
  printf("\nNumbers:\n");
  while ( (num = getw(fptr)) != EOF ) {
    printf("%d\n", num);
  }
  
  printf("\nEnd of file.\n");
  
  //close connection
  fclose(fptr);
  
  return 0;
}
File created successfully!
Enter some integer numbers [Enter -1 to exit]: 10 20 30 40 50 -1

Numbers:
10
20
30
40
50

End of file.