सी प्रिंट पूर्णांक के रूप में द्विआधारी विकल्प
बीमार सिर्फ अच्छे अभ्यास के बारे में कई बातों को संबोधित करते हैं यह संभवतः काफी समग्र रूप से सरल किया जा सकता है, लेकिन मैं उस विशेष रूप से ध्यान केंद्रित करने की कोशिश नहीं करता। मैं अगर नंबर (संख्या 0) की जरूरत नहीं देखता हूं विशेषकर पार्स () के संबंध में यदि आप रिटर्न 0. 0 हैं, तो क्या आप अभी और गणना को छोड़कर हैं। अगर आप ऐसा करते हैं, तो अंत में आउटपुट प्रिंट नहीं किए जाएंगे, भले ही 0 एक मान्य संख्या है। आपको मुख्य () में std :: endl का उपयोग करने की आवश्यकता नहीं है वह बफ़र भी फर्श देता है, जो यहां अनावश्यक है, और आप इसे कई बार करते हैं बस प्रिंट स्टेटमेंट के भीतर n का उपयोग करें आप इसे मुख्य () से ऊपर परिभाषित कर सकते हैं आप फ़ंक्शन प्रोटोटाइप को निकालने की इजाजत देते हैं। यह कमांड लाइन मापदंडों की आवश्यकता नहीं है केवल मुख्य () करता है इसका नियंत्रण पथ और रिटर्न मुझे समझ में नहीं आते हैं अगर if स्टेटमेंट निष्पादित होता है, तो यह एक संदेश प्रदर्शित करता है और 0 देता है। अगर दूसरा निष्पादित होता है, तो वह एक पूर्णांक को वापस देता है। इसके बजाय, फ़ंक्शन को केवल तभी बुलाया जाना चाहिए, अगर वह कुछ पार्स करेगा, जो इसका मुख्य काम है। कार्य केवल एक चीज़ पर ध्यान केंद्रित करना चाहिए कॉलिंग कोड को तय करना चाहिए कि उसे क्या कहा जाना चाहिए। यदि आप वंशानुक्रम का उपयोग नहीं कर रहे हैं तो संरक्षित करने की कोई ज़रूरत नहीं है (मेरा मानना है कि यहां तक कि बर्जनी स्ट्रावर्ट्रुप ने उस कीवर्ड को जोड़ने में पछतावा है)। या तो इसे निजी में बदलें या बस कीवर्ड को हटा दें क्योंकि कक्षाएं डिफ़ॉल्ट रूप से निजी होती हैं यदि आप एक या अधिक डेटा सदस्यों को बनाए नहीं रखते हैं, तो इस कार्यक्रम को कक्षाओं का उपयोग करने की आवश्यकता नहीं हो सकती है। यह सिर्फ कार्यों में शामिल है, लेकिन कक्षा फ़ंक्शंस को एक या अधिक डेटा सदस्यों की स्थिति को बदलने के लिए माना जाता है। इसके बजाय, ये फ़ंक्शंस सिर्फ मुफ्त फ़ंक्शंस (गैर-सदस्य) हो सकते हैं और कक्षा को पूरी तरह से हटा दिया जाता है। इसे एक एकल त्रिभुज बयान में बनाया जा सकता है: बेहतर अभी तक, क्योंकि std :: string समर्थन करता है। उस जगह का उपयोग करें: इंटबोटिन (स्थानीय) में स्थानीय चर को स्थिर होने की आवश्यकता नहीं है आपको अपना रिवर्स फ़ंक्शन की जरूरत नहीं है, बस std :: reverse () का उपयोग करें। टिप्पणी के रूप में rachet freak का उल्लेख किया गया है, इस मान को प्रदर्शित करते समय IO को हेरफेर करने के लिए आप std :: hex का उपयोग कर सकते हैं। इसके अलावा, आप यह तीनों नंबर प्रणालियों के साथ कर सकते हैं। मानव-पठनीय एएससीआईआई पाठ के रूप में सीरियल पोर्ट के लिए डिस्क्रिप्शन प्रिंट्स डेटा। यह कमांड कई रूप ले सकता है I अंकों को प्रत्येक अंक के लिए एएससीआईआई वर्ण का उपयोग करके मुद्रित किया जाता है। फ़्लोट्स को इसी तरह ASCII अंक के रूप में मुद्रित किया जाता है, दो दशमलव स्थानों पर चूक जाते हैं। बाइट्स को एक एकल वर्ण के रूप में भेजा जाता है। वर्ण और स्ट्रिंग को जैसे ही भेजा जाता है उदाहरण के लिए: सीरियल। प्रिंट (78) 78 सीरियल देता है। प्रिंट (1.23456) 1.23 सीरियल देता है। प्रिंट (एन) एन सीरियल देता है। प्रिंट (हैलो वर्ल्ड।) हैलो दुनिया देता है। एक वैकल्पिक दूसरा पैरामीटर अनुमत मानों का उपयोग करने के लिए आधार (प्रारूप) को निर्दिष्ट करता है BIN (बाइनरी, या बेस 2), ओसीटी (ऑक्टल या बेस 8), डीईसी (दशमलव, या बेस 10), हेक्स (हेक्साडेसिमल, या बेस 16) । चल बिन्दु संख्या के लिए, यह पैरामीटर उपयोग करने के लिए दशमलव स्थानों की संख्या निर्दिष्ट करता है। उदाहरण के लिए: सीरियल. प्रिंट (78, बीआईएन) 1001110 सीरियल। प्रिंट (78, ओसीटी) 116 सीरियल देता है। प्रिंट (78, डीईसी) 78 सीरियल देता है। प्रिंट (78, हेक्स) 4 ई सीरियल देता है। प्रिंट (1.23456, 0 ) 1 सीरियल देता है। प्रिन्टलाइन (1.23456, 2) 1.23 सीरियल देता है। प्रिन्टलाइन (1.23456, 4) 1.2346 देता है आप फ्लैश-मेमोरी आधारित स्ट्रिंग को सीरियल. प्रिंट () से एफ () के साथ लपेटकर पास कर सकते हैं। उदाहरण के लिए। सीरियल. प्रिंट (वैल) सीरियल. प्रिंट (वैल, फॉर्मेट) पैरामीटर वैल: मुद्रित करने के लिए मान - कोई डेटा प्रकार प्रारूप: संख्या आधार (अभिन्न डेटा प्रकारों के लिए) या दशमलव स्थानों की संख्या (फ्लोटिंग प्वाइंट प्रकारों के लिए) sizet निर्दिष्ट करता है ( लंबे): प्रिंट () लिखित बाइट्स की संख्या देता है, हालांकि उस संख्या को पढ़ना वैकल्पिक है डेटा के लिए एक लूप का उपयोग करता है और विभिन्न प्रारूपों में एक नंबर प्रिंट करता है। int x 0 परिवर्तनीय शून्य सेटअप 40 41 123 धारावाहिक शुरू 40 9600 41 9600 बीपीएस पर सीरियल पोर्ट खोलें: 125 रहित लूप 40 41 123 प्रिंट लेबल सीरियल। प्रिंट 40 प्रविष्टि फॉर्मैट 41 एक लेबल सीरियल छापती है प्रिंट 40 टीटी टीईटी 41 एक टैब सीरियल प्रिंट करता है प्रिंट 40 उद्धृत 41 सीरियल 40 सीटीआर 41 सीरियल प्रिंट करें 40 सीटीएचएक्सक्वाट 41 सीरियल मुद्रित करें 40 सीटीआर 41 सीरियल प्रिंट करें प्रिंट 40 उद्धरण 41 सीरियल उद्धरण 40 सीटीआर 41 सीरियल प्रिंट करें प्रिंट 40 डॉटबिनक्वॉट 41 सीरियल 40 x x एलटी 64 x 41 123 को एएससीआईआई चार्ट का केवल एक हिस्सा, 40 प्रारूपों के लिए छापने वाले 40 प्रारूपों को प्रिंट करें, कई प्रारूपों में इसे प्रिंट करने के लिए परिवर्तित करें: सीरियल। एक एएससीआईआई-एन्कोडेड दशमलव के रूप में 40 x 41 प्रिंट मुद्रित करें - जैसे कोट डेक्लॉट सीरियल। प्रिंट 40 टीटी टीईटी 41 एक टैब सीरियल प्रिंट करता है 40 x प्रिंट करें एसीसीआईआई-एन्कोडेड दशमलव सीरियल के रूप में DEC 41 प्रिंट। प्रिंट 40 टीटी टीईटी 41 एक टैब सीरियल प्रिंट करता है 40 x प्रिंट करें हेक्स 41 प्रिंट एएससीआईआई-एन्कोडेड हेक्साडेसिमल सीरियल के रूप में प्रिंट 40 टीटी टीईटी 41 एक टैब सीरियल प्रिंट करता है 40 x प्रिंट करें एक एएससीआईआई-एन्कोडेड ऑक्टल सीरियल के रूप में ओसीटी 41 प्रिंट। प्रिंट 40 टीटी टीईटी 41 एक टैब सीरियल प्रिंट करता है println 40 x बीएसएन 41 प्रिंट को एएससीआईआई-एन्कोडेड बाइनरी के रूप में तो कैरिज रिटर्न के साथ उद्धरण चिह्नों के साथ देरी 40 200 41 देरी 200 मिलीसेकंड 125 सीरियल println 40 quotquot 41 एक और कैरेज रिटर्न 125 प्रोग्रामिंग टिप्स संस्करण 1.0 के रूप में, सीरियल ट्रांसमिशन एसिंक्रोनस सीरियल. प्रिंट () किसी भी अक्षर ट्रांसमिटर होने से पहले लौटाएगा। स्टडआउट के लिए मुद्रित फ़ॉर्मेट किया गया डेटा स्ट्रिंग स्ट्रिंग को मानक आउटपुट के अनुसार इंगित करता है stdout)। यदि स्वरूप प्रारूप विनिर्देशक (शुरुआत से शुरू होता है) में शामिल होता है, तो निम्नलिखित प्रारूपों के अतिरिक्त आर्गमेंट स्वरूपित होते हैं और परिणामी स्ट्रिंग में उनके संबंधित विनिर्देशकों की जगह होती है। पैरामीटर प्रारूप C स्ट्रिंग जिसमें टेक्स्ट को stdout पर लिखा जाना है। यह वैकल्पिक रूप से एम्बेडेड प्रारूप विनिर्देशों को शामिल कर सकता है जो अनुरोधित अतिरिक्त तर्कों में निर्दिष्ट मानों द्वारा प्रतिस्थापित किए जाते हैं और स्वरूपित होते हैं। जहां अंत में स्पेसिफायर वर्ण सबसे महत्वपूर्ण घटक है, क्योंकि यह परिभाषित करता है कि इसके प्रकार और इसके संबंधित तर्क की व्याख्या: हस्ताक्षरित दशमलव पूर्णांक अनसाइन किए गए दशमलव पूर्णांक अनसाइन हेक्साडेसिमल पूर्णांक अनसाइन हेक्साडेसिमल पूर्णांक (अपरकेस) दशमलव फ्लोटिंग बिंदु, लोअरकेस दशमलव फ्लोटिंग बिंदु, अपरकेस वैज्ञानिक संकेतन (mantissaexponent), लोअरकेस वैज्ञानिक संकेतन (mantissaexponent), अपरकेस कम से कम प्रतिनिधित्व का प्रयोग करें: ई या च कम से कम प्रतिनिधित्व का प्रयोग करें: ई या एफ हेक्साडेसिमल फ्लोटिंग प्वाइंट, लोअरकेस हेक्साडेसिमल फ्लोटिंग प्वाइंट, अपरकेस अक्षर का स्ट्रिंग छपी नहीं कुछ भी नहीं। संबंधित तर्क एक हस्ताक्षरित int पर एक सूचक होना चाहिए। अभी तक लिखे गए पात्रों की संख्या को इंगित स्थान में संग्रहित किया गया है। एक और चरित्र के द्वारा इसके बाद स्ट्रीम पर सिंगल लिखना होगा। प्रारूप विनिर्देशक में उप-निर्दिष्टकर्ता भी हो सकते हैं: झंडे चौड़ाई । पूर्वनिर्धारित और संशोधक (उस क्रम में), जो वैकल्पिक हैं और इन विनिर्देशों का पालन करें: दी गई फ़ील्ड चौड़ाई के भीतर वाम-औचित्य। सही औचित्य डिफ़ॉल्ट है (चौड़ाई उप-विनिर्देश देखें) सकारात्मक संख्याओं के लिए भी प्लस या शून्य चिह्न (या -) के साथ परिणाम को आगे बढ़ाने के लिए मजबूरियां डिफ़ॉल्ट रूप से, केवल ऋणात्मक संख्याएं - साइन के पहले होती हैं यदि कोई संकेत लिखा नहीं जा रहा है, तो रिक्त स्थान मूल्य से पहले डाला जाता है। ओ के साथ प्रयुक्त एक्स या एक्स निर्दिष्ट करता है कि मान 0 से आगे है शून्य से भिन्न मानों के लिए क्रमशः 0x या 0X एक के साथ प्रयुक्त ए । ई। ई च एफ जी या जी, लिखित आउटपुट को एक दशमलव बिंदु को नियंत्रित करने के लिए मजबूर करता है, भले ही कोई भी अधिक संख्या का पालन न करें। डिफ़ॉल्ट रूप से, यदि कोई अंक नहीं आते हैं, तो कोई दशमलव बिंदु नहीं लिखा जाता है। पैडिंग निर्दिष्ट किए जाने के स्थान के बजाय शून्य के साथ शून्य (0) संख्याओं (0) को छोड़ दें (चौड़ाई उप-स्पेसिफायर देखें)। पूर्णांक विनिर्देशकों के लिए (डी। ओ। ओ एक्स एक्स): सटीकता में लिखित में अंकों की न्यूनतम संख्या निर्दिष्ट होती है। यदि लिखे जाने वाला मान इस संख्या से छोटा है, तो इसका परिणाम प्रमुख शून्य के साथ गठरी है। मान लंबा नहीं है, भले ही परिणाम लंबा हो। 0 का एक सटीक अर्थ यह है कि कोई भी अक्षर मान 0 के लिए नहीं लिखा गया है। के लिए । ए । ई। ई एफ और एफ विनिर्देशक: यह अंक दशमलव की दशमलव के बाद छपाए जाने की संख्या है (डिफ़ॉल्ट रूप से, यह 6 है)। जी और जी विनिर्देशकों के लिए: यह मुद्रित होने वाले महत्वपूर्ण अंकों की अधिकतम संख्या है। एस के लिए यह मुद्रित करने के लिए वर्णों की अधिकतम संख्या है। डिफ़ॉल्ट रूप से सभी वर्ण मुद्रित होने तक समाप्त होने वाले नल वर्ण का सामना करते हैं। यदि अवधि सटीक के लिए एक स्पष्ट मान के बिना निर्दिष्ट की गई है 0 माना जाता है परिशुद्धता प्रारूप स्ट्रिंग में निर्दिष्ट नहीं है, लेकिन एक अतिरिक्त इंटिजर मान तर्क के रूप में जो कि फ़ॉर्मेट किया जाना है। लंबाई उप-विनिर्देशक डेटा प्रकार की लंबाई को संशोधित करता है। यह एक ऐसा चार्ट है जिसका उपयोग उस प्रकार के लक्षण दिखा रहा है जिसमें लंबाई निर्दिष्टकर्ता के साथ और बिना निर्दिष्ट तर्कों (यदि कोई अलग प्रकार का उपयोग किया जाता है, उचित प्रकार प्रचार या रूपांतरण किया जाता है, तो अनुमति दी जाती है): c specifier के बारे में नोट: यह एक int या विंटित) तर्क के रूप में, लेकिन आउटपुट के लिए फ़ॉर्मेट करने से पहले अक्षरों के मूल्य (या एक wchart) में उचित रूपांतरण करता है नोट: पीला पंक्तियां सीएएम द्वारा शुरू किए गए विनिर्देशक और उप-विनिर्देशों को दर्शाती हैं। विस्तारित प्रकारों के लिए निर्दिष्टकर्ताओं के लिए ltcinttypesgt देखें। । (अतिरिक्त तर्क) स्वरूप स्ट्रिंग के आधार पर, फंक्शन स्ट्रिंग में प्रारूप विनिर्देशक (या भंडार स्थान के लिए एक सूचक, n के लिए) को बदलने के लिए उपयोग किए जाने वाले अतिरिक्त तर्कों के क्रम की उम्मीद कर सकता है। प्रारूप विनिर्देशकों में निर्दिष्ट मूल्यों की संख्या के रूप में इन तर्कों में से कम से कम होना चाहिए। फ़ंक्शन द्वारा अतिरिक्त तर्कों को अनदेखा कर दिया जाता है। वापसी मूल्य सफलता पर, लिखे गए वर्णों की कुल संख्या वापस आ गई है। यदि कोई लेखन त्रुटि होती है, तो त्रुटि संकेतक (आतंक) सेट होता है और एक ऋणात्मक संख्या वापस की जाती है। यदि विस्तृत वर्ण लिखते समय एक multibyte वर्ण एन्कोडिंग त्रुटि उत्पन्न होती है, तो errno को EILSEQ पर सेट किया जाता है और एक नकारात्मक संख्या वापस की जाती है संगतता विशेष पुस्तकालय कार्यान्वयन अतिरिक्त विनिर्देशक और उप-विनिर्देशकों का समर्थन कर सकते हैं। यहां सूचीबद्ध उन नवीनतम सी और सी मानकों (दोनों 2018 में प्रकाशित किए गए) द्वारा समर्थित हैं, लेकिन पीएलए में उन लोगों को C99 में पेश किया गया था (केवल C11 के बाद से सी कार्यान्वयन के लिए आवश्यक), और उन पुस्तकालयों द्वारा समर्थित नहीं किया जा सकता जो पुराने मानकों के अनुरूप होते हैं। stdout (function) scanf को स्ट्रिंग लिखता है scanf stdin (function) से स्वरूपित डेटा पढ़ें fprintf स्ट्रीम (फ़ंक्शन) के लिए स्वरूपित डेटा लिखें fwrite स्ट्रीम (फ़ंक्शन) फ़ंक्शंस में डेटा के ब्लॉक को लिखें: स्थूल स्थिरांक: सी में एक द्विआधारी स्ट्रिंग को परिवर्तित करना फ्रेमवर्क में कन्वर्ट की एक अधिभार निर्मित है। टॉस्ट्रिंग जो 2 मापदंडों को लेती है: आप इसे बदलना चाहते हैं और आप जिस आधार को परिवर्तित करना चाहते हैं, उसमें से एक इंट। इस आधार 2 के साथ उपयोग करने पर, आप द्विआधारी में एक संख्या के स्ट्रिंग का प्रतिनिधित्व कर सकते हैं, जैसे: अब यह सब ठीक है और बांका है, लेकिन आपने कुछ सीख नहीं किया (या हो सकता है आपने किया। मुझे नहीं पता। लेकिन आप कुछ और सीख सकते हैं ताकि पढ़ना जारी रखें)। मज़े के लिए, इस बहस को दिखाएं कि इस पद्धति में क्या नहीं बनाया गया है। आप अपने नंबर को अपने द्विआधारी प्रतिनिधित्व में कैसे रूपांतरित करेंगे, हम इसे हासिल करने के लिए बिट स्थानांतरण और तार्किक एडीएस के संयोजन का उपयोग कर सकते हैं। यदि आप तार्किक और 1 के साथ एक नंबर है, जो पहले स्थान पर बिट के मूल्य के आधार पर मान 1 या 0 दे देंगे: जैसा कि हम थोड़ा बदलाव करते हैं, 0s को बायीं ओर से लाया जाता है और सबसे दाएं बिट को हटा दिया जाता है और खो जाता है । अगर हम सही संख्या को सही स्थानांतरित करते हैं और फिर और फिर से 1 के साथ, तो दूसरी बिट के परिणाम को अच्छी तरह से प्राप्त करें। यदि हम लूप और संख्या को 0 तक आधे बदलाव के लिए जारी रखते हैं, तो हम पूरे बाइनरी स्ट्रिंग का निर्माण कर सकते हैं। उदाहरण: कहते हैं कि हमारे पास नंबर 9 है, जो द्विआधारी में 1001 है। अब टूटने वाला है: अब, सी में, सही बिट बदलाव करने के लिए हम gtgt ऑपरेटर का उपयोग करते हैं, और एक तार्किक प्रदर्शन करते हैं और हम amp ऑपरेटर का उपयोग करते हैं। यहां कोड है: यदि आप एक विशिष्ट बिट लंबाई के साथ स्ट्रिंग प्रिंट करना चाहते हैं, तो आप फ्रेमवर्क में पैडलिफ़्ट विधि का उपयोग कर सकते हैं। यह आपके स्ट्रिंग को चुनने के एक चरित्र की निर्दिष्ट संख्या में पहले होगा: दवे एक पिता, पति, प्रोग्रामर, शिरिंग के लेखक हैं। (शौकिया) फोटोग्राफर, आधा कनाडाई, CSUCI के पूर्व छात्र, और एक संपूर्ण अच्छा लड़का इस पोस्ट को साझा करें Disqus द्वारा संचालित टिप्पणियों को देखने के लिए जावास्क्रिप्ट को सक्षम करें। दाऊद ज़ीच 2017 को घोषित करें, गर्व ने भूत के साथ प्रकाशित किया
Comments
Post a Comment