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

C भाषा में हाई-लेवल I/O फंक्शन्स

I/O फंक्शन्स के प्रकार

  • हाई-लेवल I/O: मनुष्यों द्वारा आसानी से समझा जाता है, पोर्टेबल होता है।
  • लो-लेवल I/O: कंप्यूटर द्वारा समझा जाता है, तेज़ होता है लेकिन नॉन-पोर्टेबल।

हाई-लेवल I/O फंक्शन्स की सूची

फंक्शनविवरण
fprintf()फाइल में डेटा लिखना
fscanf()फाइल से डेटा पढ़ना
putc() / fputc()फाइल में कैरेक्टर लिखना
getc() / fgetc()फाइल से कैरेक्टर पढ़ना
putw()फाइल में इंटीजर लिखना
getw()फाइल से इंटीजर पढ़ना
fputs()फाइल में स्ट्रिंग लिखना
fgets()फाइल से स्ट्रिंग पढ़ना
fread()फाइल से पूरा रिकॉर्ड पढ़ना
fwrite()फाइल में पूरा रिकॉर्ड लिखना

मुख्य फंक्शन्स का विवरण

fprintf() और fscanf()

// लिखना
fprintf(fp, "control string", var_list);
// पढ़ना
fscanf(fp, "control string", &var_list);

putc() और getc()

putc(ch, fp);     // कैरेक्टर लिखें
ch = getc(fp);    // कैरेक्टर पढ़ें

putw() और getw()

putw(num, fp);    // इंटीजर लिखें
num = getw(fp);   // इंटीजर पढ़ें

fputc() और fgetc()

fputc(ch, fp);    // कैरेक्टर लिखें
ch = fgetc(fp);   // कैरेक्टर पढ़ें

fputs() और fgets()

fputs(str, fp);           // स्ट्रिंग लिखें
fgets(str, size, fp);     // स्ट्रिंग पढ़ें

fread() और fwrite()

// स्ट्रक्चर वेरिएबल के लिए
fread(&struct_var, sizeof(struct_var), count, fp);
fwrite(&struct_var, sizeof(struct_var), count, fp);

उदाहरण प्रोग्राम्स

1. संख्याएं 1 से 10 तक फाइल में स्टोर और प्रिंट करना

#include <stdio.h>

int main() {
    FILE *fp;
    int i;
    fp = fopen("num.txt", "w");
    for (i = 1; i <= 10; i++)
        putw(i, fp);
    fclose(fp);
    fp = fopen("num.txt", "r");
    printf("File content: ");
    for (i = 1; i <= 10; i++) {
        int val = getw(fp);
        printf("%d", val);
    }
    fclose(fp);
    return 0;
}
File content: 12345678910

2. स्टूडेंट डिटेल्स स्टोर करना (fread/fwrite)

#include <stdio.h>

struct student {
    int sno;
    char sname[30];
    float marks;
    char temp;
};

int 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:\n", i+1);
        fread(&s[i], sizeof(s[i]), 1, fp);
        printf("Number: %d\nName: %s\nMarks: %f\n", s[i].sno, s[i].sname, s[i].marks);
    }
    fclose(fp);
    return 0;
}

आउटपुट

Enter details of student 1
Student number: 1
Student name: bhanu
Student marks: 50
Enter details of student 2
Student number: 2
Student name: priya
Student marks: 69
Details of student 1:
Number: 1 Name: bhanu Marks: 50.000000
Details of student 2:
Number: 2 Name: priya Marks: 69.000000
  1. C प्रोग्रामिंग में फंक्शन्स की श्रेणियां C प्रोग्रामिंग में फंक्शन्स की श्रेणियां

    फंक्शन्स के चार वर्ग आर्गुमेंट्स और रिटर्न वैल्यू के आधार पर: बिना आर्गुमेंट्स, बिना रिटर्न वैल्यू बिना आर्गुमेंट्स, रिटर्न वैल्यू के साथ आर्गुमेंट्स के साथ, बिना रिटर्न वैल्यू आर्गुमेंट्स के साथ, रिटर्न वैल्यू के साथ 1. बिना आर्गुमेंट्स, बिना रिटर्न फंक्शन न इनपुट लेता है न आउटपुट देता है। void

  1. C भाषा में शिफ्ट ऑपरेशन क्या हैं? C भाषा में शिफ्ट ऑपरेशन क्या हैं?

    समस्या C भाषा का उपयोग करके किसी संख्या के बाएं शिफ्ट, दाएं शिफ्ट और कॉम्प्लीमेंट को दिखाने का सरल प्रोग्राम क्या है? समाधान बाएं शिफ्ट (Left Shift) यदि किसी वेरिएबल का मान एक बार बाएं शिफ्ट किया जाता है, तो उसका मान दोगुना हो जाता है। उदाहरण के लिए, a = 10, तो a<<1 = 20 दाएं शिफ्ट (Right Sh

  1. C भाषा में खोज तकनीकें (Searching Techniques) C भाषा में खोज तकनीकें (Searching Techniques)

    खोज (Searching) का परिचय खोज तकनीक का अर्थ है किसी सूची में किसी कुंजी तत्व (key element) को ढूंढना। यदि तत्व मिल जाता है तो खोज सफल (successful), अन्यथा असफल (unsuccessful) होती है। C में दो प्रमुख खोज तकनीकें रैखिक खोज (Linear Search) द्विआधारी खोज (Binary Search) 1. रैखिक खोज (Linear Search)