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

C प्रोग्राम का सोर्स कोड स्वयं प्रिंट करना


दिया गया कार्य लिखे गए C प्रोग्राम को स्वयं प्रिंट करना है।

हमें एक C प्रोग्राम लिखना होगा जो स्वयं को प्रिंट करेगा। इसलिए, हम C में फाइल सिस्टम का उपयोग करके उस फाइल की सामग्री को प्रिंट कर सकते हैं जिसमें हम कोड लिख रहे हैं, जैसे हम "code 1.c" फाइल में कोड लिख रहे हैं, इसलिए हम फाइल को रीड मोड में खोलते हैं और फाइल की सभी सामग्री पढ़ते हैं और परिणाम को आउटपुट स्क्रीन पर प्रिंट करते हैं।

लेकिन, फाइल को रीड मोड में खोलने से पहले, हमें उस फाइल का नाम पता होना चाहिए जिसमें हम कोड लिख रहे हैं। इसलिए, हम "__FILE__" का उपयोग कर सकते हैं जो एक मैक्रो है और डिफ़ॉल्ट रूप से वर्तमान फाइल का पथ लौटाता है।

मैक्रो "__FILE__" के लिए उदाहरण

#include <stdio.h>
int main() {
    printf("%s", __FILE__);
}

उपरोक्त प्रोग्राम उस फाइल का स्रोत प्रिंट करेगा जिसमें कोड लिखा गया है।

मैक्रो __FILE__ एक स्ट्रिंग लौटाता है जिसमें वर्तमान प्रोग्राम का पथ होता है जिसमें यह मैक्रो उल्लिखित है।

इसलिए, जब हम इसे फाइल सिस्टम में मर्ज करते हैं ताकि वर्तमान फाइल को खोल सकें जिसमें कोड रीड मोड में है, तो हम ऐसा करते हैं -

fopen(__FILE__, "r");

एल्गोरिदम

Start
Step 1 -> int main(void) फंक्शन में
    एक कैरेक्टर c घोषित करें
    फाइल "file" "__FILE__" को रीड मोड में खोलें
    do-while लूप c != End Of File
        c = fgetc(file) सेट करें
        putchar(c)
    फाइल "file" बंद करें
Stop

उदाहरण

#include <stdio.h>

int main(void) {
    // सोर्स कोड प्रिंट करने के लिए
    char c;
    // __FILE__ वर्तमान C प्रोग्राम फाइल का स्थान प्राप्त करता है
    FILE *file = fopen(__FILE__, "r");
    do {
        // फाइल की सामग्री प्रिंट करना
        c = fgetc(file);
        putchar(c);
    } while (c != EOF);
    fclose(file);
    return 0;
}

आउटपुट

#include <stdio.h>
int main(void) {
    // सोर्स कोड प्रिंट करने के लिए
    char c;
    // __FILE__ वर्तमान C प्रोग्राम फाइल का स्थान प्राप्त करता है
    FILE *file = fopen(__FILE__, "r");
    do {
        // फाइल की सामग्री प्रिंट करना
        c = fgetc(file);
        putchar(c);
    } while (c != EOF);
    fclose(file);
    return 0;
}
  1. - C# प्रोग्राम: सरणी को फ़ाइल में लिखना

    सरणी को फ़ाइल में लिखने के लिए WriteAllLines मेथड का उपयोग करें।सबसे पहले, एक स्ट्रिंग सरणी सेट करें:string[] stringArray = new string[] {    "one",    "two",    "three" };अब, उपरोक्त सरणी को फ़ाइल में जोड़ने के लिए WriteAllLines मेथड का उप

  1. फ़ाइल मान्य 32-बिट एप्लिकेशन नहीं है फ़ाइल मान्य 32-बिट एप्लिकेशन नहीं है

    शायद आप एक ऐसी समस्या का सामना कर रहे हैं जहां आप जिस प्रोग्राम को चलाने का प्रयास कर रहे हैं वह दूषित है या गायब भी है। इस मामले में, विंडोज फ़ाइल को ठीक से चलाने में सक्षम नहीं होगा, और इस तरह, ऑपरेटिंग सिस्टम एक त्रुटि उत्पन्न करेगा - फ़ाइल मान्य 32-बिट एप्लिकेशन नहीं है। त्रुटि आमतौर पर एक निष्

  1. समाधान:  फ़ाइल किसी अन्य प्रोग्राम में खुली है  त्रुटि समाधान: "फ़ाइल किसी अन्य प्रोग्राम में खुली है" त्रुटि

    त्रुटि फ़ाइल किसी अन्य प्रोग्राम में खुली है तब होती है जब आप किसी फ़ाइल पर कोई ऑपरेशन करते हैं लेकिन क्योंकि फ़ाइल किसी अन्य प्रोग्राम द्वारा एक्सेस की जा रही है, आप उस पर कार्य या ऑपरेशन निष्पादित नहीं कर पाते। यह एक बहुत ही बुनियादी सिद्धांत है जो बहुत लंबे समय से कंप्यूटिंग में मौजूद है। यह मुख्