Computer >> Máy Tính >  >> Lập trình >> C ++

hàm tmpfile () trong C

Hàm tmpfile () tạo một tệp tạm thời ở chế độ cập nhật nhị phân trong C. Nó khởi tạo trong tệp tiêu đề của chương trình C. Nó luôn trả về một con trỏ null nếu không thể tạo tệp tạm thời. Tệp tạm thời bị xóa tự động ngay sau khi chương trình kết thúc.

Cú pháp

FILE *tmpfile(void)

Giá trị trả về

Nếu tạo tệp thành công, hàm sẽ trả về một con trỏ luồng tới tệp tạm thời được tạo. Nếu không thể tạo tệp, con trỏ NULL sẽ được trả về.

Thuật toán

Begin.
   Declare an array variable c[] to the character datatype and take a character data string.
   Initialize a integer variable i ← 0.
   Declare a newfile pointer to the FILE datatype.
   Call tmpfile() function to make newfile filepointer as temporary file.
   Call open() function to open “nfile.txt” to perform write operation using newfile file pointer.
   if (newfile == NULL) then
      print “Error in creating temporary file” .
      return 0.
   Print “Temporary file created successfully”.
   while (c[i] != '\0') do
      put all the data of c[] into the filepointer newfile.
      i++.
   Call fclose() function to close the file pointer.
   Call open() function to open “nfile.txt” to perform read operation using newfile file pointer.
   Call rewind() function to set the pointer at the beginning of the stream of the file pointer.
   while (!feof(newfile)) do
      call putchar() function to print all the data of file pointer newfile.
      Call fclose() function to close the file pointer.
End.

Ví dụ

#include <stdio.h>
int main() {
   char c[] = "Tutorials Point";
   int i = 0;
   FILE* newfile = tmpfile(); //make the file pointer as temporary file.
   newfile = fopen("nfile.txt", "w");
   if (newfile == NULL) {
      puts("Error in creating temporary file");
      return 0;
   }
   puts("Temporary file created successfully");
   while (c[i] != '\0') {
      fputc(c[i], newfile);
      i++;
   }
   fclose(newfile);
   newfile = fopen("nfile.txt", "r");
   rewind(newfile); //set the pointer at the beginning of the stream of the file pointer.
   while (!feof(newfile))
   putchar(fgetc(newfile));
   fclose(newfile); //closing the file pointer
}

Đầu ra

Temporary file created successfully
Tutorials Point