में लंबाई को पार करने वाले चार का एक बफर प्रिंट करें मेरे पास एक सीरियल पोर्ट के माध्यम से एक बफर है। जब मुझे एक निश्चित कैरेक्टर मिलता है, तो मुझे पता है कि एक पूर्ण लाइन आ गई है, और मैं इसे printf
विधि से प्रिंट करना चाहता हूं। लेकिन प्रत्येक पंक्ति एक भिन्न लंबाई महत्व है, और जब मैं सिर्फ साथ जाना:सी
printf("%s", buffer);
मैं रेखा के साथ साथ पूर्व लाइन से संबंधित अतिरिक्त वर्ण मुद्रण कर रहा हूँ (अगर यह मौजूदा एक से अधिक समय था)।
मैं here कि यह संभव है, कम से कम सी ++ में, यह बताने के लिए कितना वर्ण आप एक %s
दिया पढ़ना चाहते हैं पढ़ा है, लेकिन यह कोई उदाहरण है और मैं कैसे सी में यह करने के लिए किसी भी मदद नहीं जानते ?
संपादित करें: बिल्कुल सही। तो मैं तीन समाधान है: - चार से मुद्रण चार एक for
पाश साथ - समाप्ति चरित्र का उपयोग कर - या का उपयोग कर *
सवाल यह है:। कौन सा तेज है? क्योंकि मैं माइक्रोचिप पीआईसी पर काम कर रहा हूं और मैं इसे जितनी जल्दी हो सके
आपको लगता है कि * "निश्चित चरित्र" * प्राप्त हो गया है और 'buffer' करने के लिए इसे संलग्न किया है, एक अशक्त चरित्र संलग्न (' \ 0') के रूप में अच्छी तरह से। प्रिंटिंग वर्णों को रोकने के लिए यह "sprintf()' बताता है। –