Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी में उदाहरण के साथ प्रारूप स्ट्रिंग भेद्यता और रोकथाम

स्वरूप स्ट्रिंग - यह एक ASCII स्ट्रिंग है जिसका उपयोग स्ट्रिंग्स को फ़ॉर्मेट करने के लिए किया जाता है। यह एक ASCII स्ट्रिंग है जिसमें टेक्स्ट और फ़ॉर्मेटिंग पैरामीटर शामिल हैं।

प्रोग्राम के आउटपुट स्वरूपण के लिए, सी में विभिन्न प्रारूप स्ट्रिंग हैं।

फ़ॉर्मेट स्ट्रिंग भेद्यताएं

ये बग हैं जो प्रोग्रामिंग में त्रुटियों के कारण उत्पन्न होते हैं जिन्हें प्रोग्रामर द्वारा आसानी से बनाया जा सकता है। यदि ऐसा कोई त्रुटि-प्रवण कोड ब्लॉग printf, sprintf, जैसे आउटपुट फ़ंक्शन को पास किया जाता है आदि। फिर राइट ऑपरेशन एक मनमाना मेमोरी एड्रेस पर किया जाता है।

उदाहरण

#include<stdio.h>
#include<string.h>

int main(){

   char buffer[100];
   strncpy(buffer, "Hii ", 5);
   printf(buffer);

   return 0;
}

रोकथाम

कुछ उपाय हैं जो प्रारूप स्ट्रिंग कमजोरियों को रोकने के लिए किए जा सकते हैं

  • डेटा इनपुट करने के बजाय प्रोग्राम के हिस्से के रूप में प्रारूप स्ट्रिंग का उपयोग करने का प्रयास करें। इन्हें "%s" स्ट्रिंग प्रारूप का उपयोग करके आसानी से हल किया जा सकता है।

  • प्रारूप स्ट्रिंग बनाने के लिए स्थिरांक का उपयोग करें और सभी चर स्ट्रिंग्स को कॉन्स्टेंटस्ट्रिंग में उपयोग करने के बजाय फ़ंक्शन कॉल के तर्क के रूप में निकालें।

  • ऐसे मामलों के लिए जहां स्थिर और परिवर्तनशील स्ट्रिंग आरंभीकरण मानदंडों का पालन नहीं किया जा सकता है प्रारूप गार्ड का उपयोग किया जाता है।


  1. PowerPoint Format Painter के साथ टेक्स्ट को कैसे फॉर्मेट करें

    आपने दो या तीन अलग-अलग विकल्पों को लागू करके कितनी बार पावरपॉइंट में टेक्स्ट की एक स्ट्रिंग या एक पूर्ण टेक्स्ट ब्लॉक को बदला है? हो सकता है कि आपने फ़ॉन्ट का आकार बढ़ा दिया हो, उसका रंग बदल दिया हो और उसे इटैलिक बना दिया हो। और अब आप इन्हीं परिवर्तनों को कई और टेक्स्ट स्ट्रिंग्स पर लागू करना चाहते

  1. उदाहरण के साथ जावास्क्रिप्ट त्रुटि और असाधारण हैंडलिंग

    आइए जावास्क्रिप्ट के साथ त्रुटि और अपवाद प्रबंधन अवधारणाओं को लागू करने के लिए एक उदाहरण देखें - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0&

  1. सी ++ में उदाहरण के साथ अभिव्यक्ति वृक्ष

    एक्सप्रेशन ट्री एक विशेष प्रकार का बाइनरी ट्री होता है जिसमें ट्री के प्रत्येक नोड में या तो एक ऑपरेटर या ऑपरेंड होता है। लीफ नोड्स पेड़ का एक संचालन . का प्रतिनिधित्व करता है . गैर-पत्ती नोड्स पेड़ का एक ऑपरेटर . का प्रतिनिधित्व करता है । उदाहरण: इंफिक्स एक्सप्रेशन प्राप्त करने के लिए जिस