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

जीसीसी-जी ध्वज की खोज:लाभ, उपयोग के मामले और व्यावहारिक उदाहरण

<पी> जीसीसी-जी ध्वज की खोज:लाभ, उपयोग के मामले और व्यावहारिक उदाहरण

<पी> कोडिंग करते समय जीसीसी विभिन्न स्रोत कोड संकलित करने में उपयोगी है। अलग-अलग झंडे हैं जिनका उपयोग आप जीसीसी के साथ काम करते समय कर सकते हैं जैसे -जी ध्वज। किसी दिए गए ध्वज के साथ संकलन कमांड निष्पादित करना यह निर्दिष्ट करने के लिए आदर्श है कि आप कोड से किस आउटपुट की अपेक्षा करते हैं। यह पोस्ट GCC -g ध्वज पर केंद्रित है। हम समझेंगे कि जीसीसी-जी ध्वज क्या है, इसके लाभ और यथार्थवादी उदाहरणों का उपयोग करके जीसीसी-जी ध्वज का प्रदर्शन। आगे पढ़ें!

जीसीसी-जी ध्वज क्या है

<पी> कोड संकलन में डिबगिंग त्रुटियाँ भी शामिल होती हैं जो आपके प्रोग्राम में हो सकती हैं। आपके पास एक ऐसा मामला हो सकता है जहां आप अपने कोड के बारे में डिबगिंग जानकारी प्राप्त करना चाहते हैं। उस स्थिति में, आपको GCC -g फ़्लैग के साथ काम करना होगा।

<पी> जब आप अपना कोड संकलित करते हैं तो विकल्प आपको अतिरिक्त डिबगिंग जानकारी उत्पन्न करने में मदद करेगा, जिससे आपको कोड को डीबग करने में आसानी होगी। एक डेवलपर के रूप में, -g फ़्लैग आपके कोड को समझने और उसे आसानी से डीबग करने में उपयोगी है। यह निम्नलिखित सिंटैक्स के साथ काम करता है:

<पी> gcc -g -o आउटपुट-फ़ाइल इनपुट-प्रोग्राम

<पी> आउटपुट फ़ाइल संकलित प्रोग्राम का नाम है, जबकि इनपुट प्रोग्राम लक्ष्य कोड है जिसे आप संकलित करना चाहते हैं।

<पी> यह सुनिश्चित करने के लिए कि यह अपेक्षा के अनुरूप चले, डेवलपर्स बहुत सारे कोड डिबगिंग करते हैं। मुद्दों की पहचान करने और उन्हें ठीक करने में डिबगिंग महत्वपूर्ण है। GCC -g फ़्लैग डेवलपर्स को अपने प्रोग्राम के साथ सुचारू रूप से काम करने की अनुमति देने में कई लाभ प्रदान करता है।

<पी> इसके द्वारा प्रदान किए जाने वाले विभिन्न लाभ निम्नलिखित हैं:

1. स्टैक ट्रेस का उत्पादन

<पी> स्टैक ट्रेस किसी प्रोग्राम के निष्पादन के दौरान होने वाले सक्रिय स्टैक फ्रेम की एक रिपोर्ट को संदर्भित करता है। जब आपका प्रोग्राम क्रैश हो जाता है, तो आपको अपने प्रोग्राम में विभिन्न बिंदुओं के स्टैक ट्रेस मिलेंगे जहां कोड यह पहचानने के लिए टूटता है कि त्रुटि कहां हुई और इसे सर्वोत्तम तरीके से कैसे ठीक किया जाए। स्टैक ट्रेस उस क्रम को भी उजागर करता है जिसमें त्रुटि होने पर प्रोग्राम की स्थिति थी। इस प्रकार, आप त्रुटि होने से पहले की घटनाओं के क्रम को आसानी से पहचान लेंगे और इसे कैसे ठीक करें।

2. परिवर्तनीय निरीक्षण

<पी> -g फ़्लैग जोड़ने के साथ आने वाली डिबगिंग जानकारी रनटाइम पर आपके प्रोग्राम में आपके वेरिएबल्स के मानों का निरीक्षण करने में मदद करती है। आप जांच सकते हैं कि रनटाइम के दौरान वेरिएबल किस स्थिति में हैं। इसलिए, आप विभिन्न बिंदुओं पर त्रुटि से पहले प्रोग्राम के व्यवहार को आसानी से समझ सकते हैं।

3. प्रतीकात्मक जानकारी

<पी> जब आप -g ध्वज जोड़ते हैं, तो आपको प्रतीकात्मक जानकारी मिलेगी जो स्रोत कोड को संकलित बाइनरी से जोड़ती है। प्रतीकात्मक जानकारी में पंक्ति संख्याएँ और चर नाम जैसी चीज़ें शामिल हैं। इस तरह, आप प्रोग्राम के निष्पादन को उसके मूल कोड के साथ आसानी से मैप कर सकते हैं जिससे विश्लेषण और डीबग करना आसान हो जाता है।

4. सशर्त ब्रेकप्वाइंट

<पी> जीडीबी जैसे डिबगर के साथ काम करना डिबगिंग जानकारी पर निर्भर करता है जिसे आप अपने स्रोत कोड में अस्थायी ब्रेकप्वाइंट बनाने के लिए -जी ध्वज के साथ उत्पन्न करते हैं। ये ब्रेकप्वाइंट डेवलपर्स को प्रोग्राम में उन स्थितियों या अनुभागों को परिभाषित करने में मदद करते हैं जब प्रोग्राम रुकना चाहिए। इस प्रकार, आप यह जांचने के लिए ब्रेकप्वाइंट सेट करके कोड को आसानी से डीबग कर सकते हैं कि कौन सा अनुभाग आपके कोड में त्रुटि उत्पन्न कर रहा है। किसी प्रोग्राम का उसके ब्रेकप्वाइंट का उपयोग करके विश्लेषण करना पूरे कोड की जाँच करने से आसान है।

<पी> जीसीसी-जी ध्वज के लाभों को जानने के बाद, यह प्रदर्शित करने का समय आ गया है कि आप अपनी डिबगिंग को सरल बनाने के लिए इसका उपयोग कैसे कर सकते हैं। यहां, हम "linuxhint.c" नाम की एक Csource फ़ाइल के साथ काम कर रहे हैं।

<पी> आइए इसे निम्नलिखित कमांड के साथ GCC -g फ़्लैग का उपयोग करके संकलित करें:

<पी> जीसीसी -जी -ओ डेमो1 linuxhint.c

<पी> जीसीसी-जी ध्वज की खोज:लाभ, उपयोग के मामले और व्यावहारिक उदाहरण

<पी> -g फ़्लैग जोड़ने पर, आपको एक बाइनरी फ़ाइल मिलेगी जिसमें जानकारी शामिल है और जिसे आप अपने डिबगर के साथ उपयोग कर सकते हैं। हमने अपनी जेनरेट की गई बाइनरी फ़ाइल को "डेमो1" नाम दिया है। आइए आगे बढ़ें और जीएनयू डिबगर (जीएनयू डिबगर) के साथ इसका उपयोग करने के उदाहरण दें।

<पी> निम्नलिखित छवि में दिखाए अनुसार डिबगर चलाएँ:

<पी> जीसीसी-जी ध्वज की खोज:लाभ, उपयोग के मामले और व्यावहारिक उदाहरण

<पी> जीएनयू खुल जाएगा और आप डिबगिंग में इसके साथ इंटरैक्ट कर सकते हैं। उदाहरण के लिए, निम्नलिखित उदाहरण में, हमने अपना ब्रेकपॉइंट 15 के रूप में सेट किया है। फिर, हमने प्रोग्राम को ब्रेकपॉइंट के साथ चलाया और प्रोग्राम में विभिन्न वेरिएबल्स की जांच की।

<पी> जीसीसी-जी ध्वज की खोज:लाभ, उपयोग के मामले और व्यावहारिक उदाहरण

<पी> जीसीसी -जी ध्वज का उपयोग करने के लिए धन्यवाद, यदि हमारे पास विशिष्ट डिबगिंग जानकारी है तो हम डिबगर को आसानी से समझ सकते हैं और उसके साथ काम कर सकते हैं। इस प्रकार आप GCC -g फ़्लैग का उपयोग करते हैं।

निष्कर्ष

<पी> जीसीसी -जी ध्वज डिबगिंग जानकारी उत्पन्न करने में उपयोगी है जिसका उपयोग आप अपने प्रोग्राम का विश्लेषण और डिबग करने के लिए कर सकते हैं। हमने GCC -g ध्वज के लाभों के बारे में बताया और यह समझने के लिए एक उदाहरण प्रदान किया कि आपके प्रोग्राम को संकलित करते समय और डिबगर के साथ काम करते समय इसका उपयोग कैसे किया जाए।

लेखक के बारे में

<पी> जीसीसी-जी ध्वज की खोज:लाभ, उपयोग के मामले और व्यावहारिक उदाहरण

डेनिस करिउकी

<पी> डेनिस एक कंप्यूटर वैज्ञानिक हैं और उन्हें नेटवर्किंग और साइबर सुरक्षा का शौक है। मुझे टर्मिनल बहुत पसंद है और लिनक्स का उपयोग करना एक शौक है। मुझे Linux और कंप्यूटिंग के बारे में सुझाव और विचार साझा करने का शौक है।


  1. एचटीएमएल डोम इनपुट चेकबॉक्स ऑटोफोकस संपत्ति एचटीएमएल डोम इनपुट चेकबॉक्स ऑटोफोकस संपत्ति

    HTML DOM इनपुट चेकबॉक्स ऑटोफोकस प्रॉपर्टी टाइप =चेकबॉक्स के साथ इनपुट HTML एलिमेंट के ऑटोफोकस एट्रिब्यूट के मान को लौटाती है और संशोधित करती है। सिंटैक्स निम्नलिखित वाक्य रचना है - 1. रिटर्निंग ऑटोफोकस ऑब्जेक्ट.ऑटोफोकस 2. ऑटोफोकस को संशोधित करना object.autofocus =true|false उदाहरण आइए ऑटोफोकस गु

  1. पायथन प्रोग्राम में गोलाकार दर्पण की फोकल लंबाई पायथन प्रोग्राम में गोलाकार दर्पण की फोकल लंबाई

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे - समस्या कथन हमें गोलीय दर्पण की वक्रता त्रिज्या दी जाएगी और हमें उसकी फोकस दूरी ज्ञात करनी होगी। फोकस दूरी दर्पण के मुख्य फोकस से वक्रता केंद्र के बीच की दूरी है। गोलीय दर्पण की फोकस दूरी ज्ञात करने के लिए सर्वप्रथम हमें उस दर्पण

  1. एंड्रॉइड ऐप में टैब लेआउट कैसे बनाएं? एंड्रॉइड ऐप में टैब लेआउट कैसे बनाएं?

    यह उदाहरण दर्शाता है कि मैं एंड्रॉइड ऐप में टैब लेआउट कैसे बना सकता हूं। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2 - टैब लेआउट बनाने के लिए निम्नलिखित निर्भरता जोड़ें - कार्यान्वयन com.android.s