प्रोग्राम चलने के बाद विंडोज सीएमडी। Exe नई लाइन डाल रहा है


1

क्या प्रोग्राम चलने के बाद CMD.exe स्वचालित रूप से टर्मिनल विंडो पर एक नई लाइन डालता है? मेरा कार्यक्रम .NET के माध्यम से पाठ की एक पंक्ति को आउटपुट कर Console.WriteLine("TEXT");रहा है । हालांकि, जब मैं इसे CMD.exe में चलाता हूं तो मैं एक खाली लाइन भी देख रहा हूं। ऐसा क्यों है?

यह इस तरह दिखेगा:

TEXT

C:\>

उपरोक्त आउटपुट में रिक्त पंक्ति को नोट करें। मेरा कार्यक्रम केवल 1 पंक्ति लिखता है।


1
मुझे ऐसा लगता है। यह उस पाठ से अलग करता है जो Microsoft के बारे में दिखाता है जब आप cmd खोलते हैं। वे अपनी कॉपीराइट जानकारी के बजाय C: \> से पहले इसे रख सकते हैं।
E2Busy

जवाबों:


4

CMD प्रॉम्प्ट जैसे कि C:\>हमेशा एक लाइन की शुरुआत में प्रदर्शित किया जाता है। सीएमडी को इस बात की गारंटी देने में सक्षम होने के लिए, उसे एक कंसोल प्रोग्राम समाप्त होने के बाद एक नई लाइन डालनी होगी, क्योंकि प्रोग्राम के अंत में एक लाइन को समाप्त नहीं किया जा सकता है।

हाइपोथेटिक रूप से, यदि कार्यक्रम समाप्त होने के बाद सीएमडी स्वचालित रूप से एक नई पंक्ति नहीं डालते थे, और यदि आपका कोड Console.Write("TEXT")इसके बजाय उपयोग किया जाता था WriteLine, तो प्रॉम्प्ट समाप्त हो जाता था जैसे लाइन के बीच में प्रदर्शित होना TEXTC:\>


बस एक छोटा सा सुधार - यह 2 नए अंक सम्मिलित करता है। थोड़ी सी चालाकी से आप उनमें से 1 को दबा सकते हैं, <nul (set/p _any_variable=string to emit)उदाहरण के लिए प्रयास करें और आप देखेंगे कि रिक्त रेखा उत्सर्जित नहीं होती है।
DavidPostill

@DavidPostill जहाँ तक मैं बता सकता हूँ, CMD ही सिर्फ 1 न्यूलाइन सम्मिलित करता है । अधिकांश प्रोग्राम अपनी खुद की एक नई लाइन के साथ आउटपुट को समाप्त करते हैं, जो एक अतिरिक्त खाली लाइन को प्रकट करता है, लेकिन उस न्यूलाइन को प्रोग्राम द्वारा ही लिखा जाता है, सीएमडी द्वारा नहीं। उदाहरण के लिए, एक सांत्वना ऐप चलाना जो WriteConsoleW(GetStdHandle(STD_OUTPUT_HANDLE), L"test", ...)बिना किसी समाप्ति वाली नई testरेखा के साथ एक पंक्ति में प्रदर्शित होगा, फिर संकेत अगली अगली पंक्ति पर दिखाई देगा।
dxiv

ठीक है, पर्याप्त उचित ...
DavidPostill
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.