Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C में फाइलों में उपयोग होने वाले fread() और fwrite() फंक्शन्स समझाना


समस्या

5 छात्रों का विवरण फाइल में स्टोर करने और fread() और fwrite() का उपयोग करके प्रिंट करने के लिए C प्रोग्राम लिखें।

समाधान

fread() फंक्शन एक बार में पूरा रिकॉर्ड पढ़ता है।

सिंटैक्स

fread(& structure variable, size of (structure variable), no of records, file pointer);

उदाहरण

struct emp{ 
    int eno; 
    char ename[30]; 
    float sal; 
} e; 
FILE *fp; 
fread(&e, sizeof(e), 1, fp);

fwrite() फंक्शन एक बार में पूरा रिकॉर्ड लिखता है।

सिंटैक्स

fwrite(& structure variable, size of structure variable, no of records, file pointer);

उदाहरण

struct emp{ 
    int eno; 
    char ename[30]; 
    float sal; 
} e; 
FILE *fp; 
fwrite(&e, sizeof(e), 1, fp);

प्रोग्राम

#include<stdio.h> 
struct student{ 
    int sno; 
    char sname[30]; 
    float marks; 
    char temp; 
}; 
main(){ 
    struct student s[60]; 
    int i; 
    FILE *fp; 
    fp = fopen("student1.txt", "w"); 
    for(i = 0; i < 2; i++){ 
        printf("enter details of student %d\n", i+1); 
        printf("student number:"); 
        scanf("%d", &s[i].sno); 
        scanf("%c", &s[i].temp); 
        printf("student name:"); 
        gets(s[i].sname); 
        printf("student marks:"); 
        scanf("%f", &s[i].marks); 
        fwrite(&s[i], sizeof(s[i]), 1, fp); 
    } 
    fclose(fp); 
    fp = fopen("student1.txt", "r"); 
    for(i = 0; i < 2; i++){ 
        printf("details of student %d are\n", i+1); 
        fread(&s[i], sizeof(s[i]), 1, fp); 
        printf("student number = %d\n", s[i].sno); 
        printf("student name = %s\n", s[i].sname); 
        printf("marks = %f\n", s[i].marks); 
    } 
    fclose(fp); 
    getch(); 
}

आउटपुट

enter details of student 1 
student number: 1 
student name: pinky 
student marks: 56 
enter details of student 2 
student number: 2 
student name: rosy 
student marks: 87 
details of student 1 are 
student number = 1 
student name = pinky 
marks = 56.000000 
details of student 2 are 
student number = 2 
student name = rosy 
marks = 87.000000

  1. C भाषा में putw() और getw() फंक्शन्स C भाषा में putw() और getw() फंक्शन्स

    फाइल रिकॉर्ड्स का संग्रह है या हार्ड डिस्क पर एक स्थान है जहां डेटा स्थायी रूप से संग्रहीत होता है। फाइलों पर ऑपरेशन्स C प्रोग्रामिंग भाषा में फाइलों पर ऑपरेशन्स निम्नलिखित हैं: फाइल का नामकरण फाइल खोलना फाइल से पढ़ना फाइल में लिखना फाइल बंद करना सिंटैक्स फाइल खोलने का सिंटैक्स निम्नलिखित है: F

  1. C में ऐरे ऑफ पॉइंटर्स और पॉइंटर टू पॉइंटर C में ऐरे ऑफ पॉइंटर्स और पॉइंटर टू पॉइंटर

    ऐरे ऑफ पॉइंटर्स किसी भी डेटा टाइप की तरह, हम पॉइंटर्स का ऐरे घोषित कर सकते हैं। घोषणा datatype *pointername[size]; उदाहरण: int *p[5]; // 5 इंटीजर एड्रेस रखने वाला पॉइंटर ऐरे आरंभीकरण int a[3] = {10, 20, 30}; int *p[3]; for (i = 0; i < 3; i++) p[i] = &a[i]; // या p[i] = a + i; एक्सेस करना for

  1. C में पॉइंटर्स और ऐरे का संबंध C में पॉइंटर्स और ऐरे का संबंध

    पॉइंटर्स और ऐरे कंपाइलर ऐरे के सभी एलिमेंट्स के लिए सन्निहित मेमोरी लोकेशन्स आवंटित करता है। बेस एड्रेस पहले एलिमेंट का पता होता है। उदाहरण int a[5] = {10, 20, 30, 40, 50}; मेमोरी लेआउट (मान लें बेस एड्रेस 1000, int = 4 बाइट्स): एलिमेंटवैल्यूएड्रेस a[0]101000 a[1]201004 a[2]301008 a[3]401012 a[4]