C भाषा में कमांड लाइन आर्गुमेंट्स What is Command Line Arguments in C


C भाषा में कमांड लाइन आर्गुमेंट्स What is Command Line Arguments in C


C भाषा में Command Line Arguments एक विशेष प्रकार के arguments होते हैं, जो आपके C program के command line से पास किए जाते हैं। Command line arguments प्रोग्राम को उपयोगकर्ता से डाटा पास करने की अनुमति देते हैं।

जब आप अपने C program को command line से रन करते हैं, तो आप command line arguments को उपयोग करते हुए अपने program के साथ arguments के रूप में पास कर सकते हैं। C program के अंतर्गत, main() function command line arguments के रूप में एक विशेष प्रकार के pointers द्वारा प्राप्त करता है।

main() function की declaration इस प्रकार होती है:

int main(int argc, char *argv[])


यहाँ, argc (argument count) command line arguments की संख्या को दर्शाता है जो प्रोग्राम के साथ रन किए गए हैं। और argv (argument vector) स्ट्रिंग पॉइंटर एक pointer array है, जो हमारे command line arguments को दर्शाता है।

इसके उदाहरण के लिए, यदि आप अपने C program को निम्नलिखित command line arguments के साथ रन करते हैं:

./myprogram arg1 arg2 arg3


तो आपकी main() function इस तरह की होगी:

int main(int argc, char *argv[]) {
// ...
}


यहाँ, argc 3 होगा और argv एक 3-element pointer array होगा जो स्ट्रिंग के पहले अक्षर को दर्शाता है।

उदाहरण के लिए, यदि आपके program में निम्नलिखित command line arguments को पारित किया जाता है:

./myprogram hello world


तो आपकी main() function इस तरह की होगी:

int main(int argc, char *argv[]) {
// ...
}

Command Line Arguments का उदाहरण

जब हम C भाषा में कोई program compile और run करते हैं तो हम उस program के साथ command line arguments भी पास कर सकते हैं। ये arguments program के लिए inputs के रूप में काम करते हैं।

यदि हम एक program बनाते हैं जो दो संख्याओं का जोड़ा करता है, तो हम command line arguments का उपयोग करके इस program को दो संख्याओं का जोड़ा करने के लिए उपयोग कर सकते हैं। निम्नलिखित code snippet में एक उदाहरण दिया गया है:

#include <stdio.h>

int main(int argc, char *argv[]) {
    int num1, num2, sum;

    if (argc != 3) {
        printf("Usage: ./add num1 num2\n");
        return 1;
    }

    num1 = atoi(argv[1]); // converting the first argument to integer
    num2 = atoi(argv[2]); // converting the second argument to integer

    sum = num1 + num2;

    printf("%d + %d = %d\n", num1, num2, sum);

    return 0;
}


यहाँ, main() function के पास argc और argv[] arguments हैं। argc argument command line arguments की संख्या को दर्शाता है, और argv[] array उन arguments को संग्रहित करता है। प्रथम argument हमेशा program का नाम होता है, इसलिए हम argc की मान्यता केवल जब उसकी मान्यता 3 होती है तब मानेंगे, जब दो argument होंगे जो संख्याएं होंगी।

फिर हम atoi() function का उपयोग करके command line arguments को integer में convert करते हैं। इसके बाद हम दो संख्याओं का जोड़ा करते हैं और उत्तर को प्रिंट करते हैं।