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

Tại sao cần có tệp trong ngôn ngữ lập trình C?

Tệp là tập hợp các bản ghi (hoặc) nó là một nơi trên đĩa cứng, nơi dữ liệu được lưu trữ vĩnh viễn. Bằng cách sử dụng các lệnh C, chúng tôi truy cập tệp theo các cách khác nhau.

Cần tệp bằng ngôn ngữ C

  • Toàn bộ dữ liệu bị mất khi chương trình kết thúc và việc lưu trữ trong một tệp sẽ bảo toàn dữ liệu của bạn ngay cả khi chương trình kết thúc.

  • Nếu bạn muốn nhập một lượng lớn dữ liệu, thông thường, bạn phải mất rất nhiều thời gian để nhập tất cả.

  • Nếu bạn có một tệp chứa tất cả dữ liệu, bạn có thể dễ dàng truy cập nội dung của tệp bằng cách sử dụng một vài lệnh trong C.

  • Bạn có thể dễ dàng di chuyển dữ liệu của mình từ máy tính này sang máy tính khác mà không cần thay đổi.

Thao tác trên tệp

Các thao tác có thể được thực hiện trên tệp bằng ngôn ngữ C như sau -

  • Đặt tên cho tệp.
  • Mở tệp.
  • Đọc từ tệp.
  • Đang ghi vào tệp.
  • Đang đóng tệp.

Cú pháp

Cú pháp để mở và đặt tên tệp như sau -

FILE *File pointer;

Ví dụ:FILE * fptr;

File pointer = fopen ("File name”, "mode”);

Ví dụ:fptr =fopen ("sample.txt", "r")

FILE *fp;
fp = fopen ("sample.txt”, "w”);

Cú pháp để đọc từ tệp như sau -

int fgetc( FILE * fp );// read a single character from a file

Cú pháp để ghi vào tệp như sau -

int fputc( int c, FILE *fp ); // write individual characters to a stream

Ví dụ

Sau đây là chương trình C để chứng minh các tệp -

#include<stdio.h>
void main(){
   //Declaring File//
   FILE *femp;
   char empname[50];
   int empnum;
   float empsal;
   char temp;
   //Opening File and writing into it//
   femp=fopen("Employee Details.txt","w");
   //Writing User I/p into the file//
   printf("Enter the name of employee : ");
   gets(empname);
   //scanf("%c",&temp);
   printf("Enter the number of employee : ");
   scanf("%d",&empnum);
   printf("Enter the salary of employee : ");
   scanf("%f",&empsal);
   //Writing User I/p into the file//
   fprintf(femp,"%s\n",empname);
   fprintf(femp,"%d\n",empnum);
   fprintf(femp,"%f\n",empsal);
   //Closing the file//
   fclose(femp);
   //Opening File and reading from it//
   femp=fopen("Employee Details.txt","r");
   //Reading O/p from the file//
   fscanf(femp,"%s",empname);
   //fscanf(femp,"%d",&empnum);
   //fscanf(femp,"%f",&empsal);
   //Printing O/p//
   printf("employee name is : %s\n",empname);
   printf("employee number is : %d\n",empnum);
   printf("employee salary is : %f\n",empsal);
   //Closing File//
   fclose(femp);
}

Đầu ra

Khi chương trình trên được thực thi, nó tạo ra kết quả sau -

Enter the name of employee : Pinky
Enter the number of employee : 20
Enter the salary of employee : 5000
employee name is : Pinky
employee number is : 20
employee salary is : 5000.000000