यह वास्तव में printf
के साथ कुछ भी करने के लिए नहीं है। सी 11 मानक §5.2.2 में भागने के अनुक्रमों को सूचीबद्ध करता है, और सूची में \a
, \b
, \f
, \n
, \r
, \t
और \v
शामिल हैं। भाग होने के नाते GCC\e
समझता है एक एस्केप अनुक्रम जो ASCII वर्ण के लिए खड़ा होने के लिए Esc (\E
रूप में अच्छी तरह से काम कर सकते हैं, या अपने संकलक उनमें से कोई भी समर्थन कर सकते हैं। अपने संकलक के लिए दस्तावेज़ देखें)। निम्न पोर्टेबल control sequences क्या हैं। वे सभी टर्मिनल में काम करने की गारंटी नहीं देते हैं, या यहां तक कि बिल्कुल भी काम करते हैं। जानने का सबसे अच्छा तरीका है अपने सिस्टम के लिए प्रलेखन से परामर्श करना।
§6.4.4.4 ऑक्टल एस्केप दृश्यों का भी वर्णन करता है। उदाहरण के लिए, \033
, जहां 033
27
दशमलव में है, और इसलिए ASCII में बचने वाला चरित्र है। इसी तरह, आप \x1b
का उपयोग कर सकते हैं, जो एक ही वर्ण निर्दिष्ट एक हेक्साडेसिमल भागने अनुक्रम है।
हम od -c
के साथ कार्यक्रम के उत्पादन का निरीक्षण किया, तो यह 033
को दर्शाता है।
(✿´‿`) ~/test> ./a.out | od -c
0000000 033 [ 0 m 033 [ ? 2 5 l 033 [ 2 J
0000016
एएनएसआई भागने दृश्यों टर्मिनल emulators से व्याख्या कर रहे हैं। सी अंडाकार/हेक्साडेसिमल एस्केप दृश्यों को ASCII Esc वर्ण में परिवर्तित करेगा। एक एक्सटेंशन के रूप में आपका कंपाइलर \e
या \E
भी परिवर्तित कर सकता है। के रूप में अनुरोध किया है, क्या नियंत्रण दृश्यों की एक संक्षिप्त व्याख्या कर रहे हैं:
[0m
: रीसेट करता है सब SGR विशेषताओं
[?25l
: विकिपीडिया से:
कर्सर
[2J
छुपाता स्क्रीन का हिस्सा साफ़ करता है। यदि n
0 (या अनुपलब्ध) है, तो स्क्रीन के अंत में कर्सर से साफ़ करें। यदि n
1 है, तो कर्सर से स्क्रीन की शुरुआत से साफ़ करें। यदि n
2, स्पष्ट पूरे स्क्रीन ... है
स्रोत
2014-11-30 15:29:04
'मैन 5 टर्म कैप 'या' मैन 5 टर्मिनोफो ' – wildplasser
' printf()' के परिप्रेक्ष्य से यह किसी अन्य 'printf() 'कथन की तरह काम करता है: यह मानक आउटपुट के लिए' char 'का अनुक्रम प्रिंट करता है। प्रोग्राम के आउटपुट को फ़ाइल में रीडायरेक्ट करने का प्रयास करें और उसके बाद इसकी सामग्री का निरीक्षण करें। – alk
संभावित डुप्लिकेट [विंडोज़ और लिनक्स कंसोल में स्क्रीन के शीर्ष पर स्क्रीन पॉइंट रीसेट करें] (http://stackoverflow.com/questions/56324/reset-screen-point-to-the-top-of- स्क्रीन-in- विंडोज-लिनक्स-कंसोल) – 2501