मैंने इस फ़ंक्शन के लिए हर जगह देखा है और यह काम करने के लिए हेडर फाइल नहीं ढूंढ सकता है। यह कहता है कि clrscr() अविकसित है जो मुझे प्रश्न में लाता है। Clrscr() है; सी ++ में एक समारोह?clrscr() है; सी ++ में एक समारोह?
उत्तर
यह पुराने बोर्लैंड सी कंपाइलर्स में < conio.h> में एक फ़ंक्शन होता था।
यह एक सी ++ मानक फ़ंक्शन नहीं है।
बोर्लैंड में कुछ बहुत अच्छे डॉस ग्राफिक्स पुस्तकालय थे। – Kredns
दरअसल, माइक्रोसॉफ्ट सी ++ में अभी भी conio.h है, हालांकि clrscr() जैसे फ़ंक्शन वहां नहीं हैं। –
एक वेब सर्च कहती है कि हेडर फ़ाइल जो आप चाहते हैं वह 'conio.h' है - मैंने इसे आजमाया नहीं है, इसलिए कोई गारंटी नहीं है। इसका अस्तित्व इस बात पर भी निर्भर हो सकता है कि आप किस प्लेटफॉर्म के खिलाफ संकलन कर रहे हैं।
वास्तविक सी ++ में स्क्रीन को साफ़ करने का सबसे आसान तरीका केवल रिक्त रेखाओं का एक गुच्छा भेजना है। बेशक यह मानते हुए किया जाता है कि stdout स्क्रीन पर निर्देशित और नहीं है एक फ़ाइल:
for (int i = 0; i < 80; ++i)
cout << "\n";
cout << endl;
यह भी मानता है कि कंसोल लाइन बफर 80 लाइनों से कम है, जिसकी गारंटी नहीं है। –
युप - लेकिन यदि आप एक स्क्रीन बफर "समाशोधन" के बारे में चिंता करते हैं, तो आमतौर पर आप जानते हैं कि आप कितनी लाइनों से निपट रहे हैं। – Eclipse
दोनों अच्छी टिप्पणियां यहां हैं! –
आप इस समारोह के लिए इस हेडर फाइल को शामिल करना है
#include <conio.h>
बाद में सी ++ के साथ? मुझे ऐसा नहीं लगता: डी –
और इससे पहले कि किसी को हमेशा की तरह पोस्ट "कृपया ईमेल मुझे conio.h फ़ाइल "अनुरोध, क्या मैं यह इंगित कर सकता हूं कि इस प्राचीन बोर्लैंड हेडर फ़ाइल में केवल फ़ंक्शन की घोषणा शामिल है। आपको सहायक बोर्लैंड लाइब्रेरी की भी आवश्यकता होगी, जो किसी भी आधुनिक सी ++ संकलन प्रणाली के अनुकूल नहीं होगा।
जो लोगों को नहीं रोकना चाहिए! वे सिर्फ लाइब्रेरी से फ़ंक्शन को अलग कर सकते हैं और इनलाइन असेंबली के माध्यम से इसे निष्पादित करने वाले शीर्षलेख में एक परिभाषा डाल सकते हैं! –
जैसा कि पहले उल्लेख किया है, clrscr(),
सभी इरादों और उद्देश्यों के लिए टर्बो C++ से है conio.h अंदर, conio.h "गैर मानक" है, और के रूप में ऐसी शायद बचा जाना चाहिए।
मैं एक सरल स्पष्ट स्क्रीन के लिए उपयोग करने के लिए प्रीकंपेलर का उपयोग करने के लिए उपयोग करता हूं, और बस ऑपरेटिंग सिस्टम के स्पष्ट कार्यक्रम को कॉल करता हूं .... यह जानना काफी समझदार है कि स्क्रीन कितनी "लंबा" है।
// somewhere in the program
#define WINDOWS 1
void console_clear_screen() {
#ifdef WINDOWS
system("cls");
#endif
#ifdef LINUX
system("clear");
#endif
}
खिड़कियों में, आप आप खिड़कियों सांत्वना सीधे एक "संभाल", अक्सर एक hWin के रूप में कोड में नोट का उपयोग कर के साथ बातचीत कर सकते हैं windows.h को देखने के लिए चाहते हो सकता है,।
लिनक्स में, मुझे शाप/ncurses के साथ शुभकामनाएं मिली हैं, हालांकि यह पहले थोड़ा उलझन में है।
अद्यतन कॉलिंग प्रणाली कार्यक्रम (? Clear.exe) एक संभावित सुरक्षा जोखिम है - अगर किसी को एक वैकल्पिक मार्ग के माध्यम से किसी भी तरह सिस्टम कॉल का अपहरण करने में सक्षम है, वे अजीब काम करने के लिए अपने कार्यक्रम के लिए मजबूर कर सकते हैं। मेरी सिफारिश यह है कि इन चीजों को पूरा करने के लिए अपने प्लेटफॉर्म के कंसोल एपीआई में खोदना है।
# लोअरकेस परिभाषित नहीं है? इसके अलावा कंपाइलर आपके लिए विन्डोज़ या लिनक्स को परिभाषित करेगा, है ना? – jmucchiello
मुझे नहीं पता कि परिभाषित केस संवेदनशील है या नहीं। और आम तौर पर परिभाषित windows.h "Win32" के रूप में यह सिर्फ एक उदाहरण था के माध्यम से शामिल किया गया है। –
मुझे लगता है कि, जब तक कि आप को परिभाषित परिभाषित #define पहले – paulm
यूनिक्स जैसी प्रणालियों पर आप VT100 एस्केप कोड का उपयोग कर सकते हैं।
std::cout << "\033[2J" << std::flush;
आप प्रणाली cls आदेश आउटपुट स्क्रीन स्पष्ट करने के लिए उपयोग कर सकते हैं ..
clrscr() टर्बो ग से ++ है, conio.h और conio.h अंदर "गैर है मानक ", और इस तरह से शायद टाला जाना चाहिए। उदाहरण
#include<windows.h>
main()
{
some code....;
system("cls");
some more code;
}
इसके परीक्षण किया है और काम करता है .. मैं MinGW संकलक के साथ उपयोग देव C++ .. :)
लिनक्स पर मैं हमेशा का उपयोग करें:
void clrscr(void)
{
fprintf(stdout, "\033[2J"); // clean screen
fprintf(stdout, "\033[1;1H"); // move cursor to the first line
}
आप 'clear' के स्रोत कोड को पढ़ने के लिए हैं, तो आप पाएंगे कि यह वास्तव में टर्मिनल की तरह और मुद्दों है कि टर्मिनल के लिए उपयुक्त उत्पादन, बल्कि यह सोचते हैं की तुलना में लग रहा है कि पूरी दुनिया एक वीटी 100 है। मैं इसे पाठक के लिए एक अभ्यास के रूप में छोड़ दूंगा क्योंकि एक पोर्टेबल कार्यक्रम में किया जाना चाहिए। –
- 1. गेटच(), गोटोक्सी(), देरी(), clrscr()
- 2. सी में एक शून्य समारोह ++
- 3. एक ऑब्जेक्टिव-सी समारोह
- 4. सी में एक समारोह के भीतर समारोह को परिभाषित करना
- 5. सी में एक cout समारोह बनाना?
- 6. समारोह सी ++
- 7. समारोह सी
- 8. एक सी समारोह से एक PyObject * बनाएँ?
- 9. एक समारोह है कि
- 10. बुला समारोह एक समारोह
- 11. सी में एक समारोह से एक enum लौट रहे हैं?
- 12. एक समारोह
- 13. स्कैला में एक समारोह शाब्दिक क्या है?
- 14. इस प्रकार अगर मैं एक समारोह है कैसे एक समारोह
- 15. स्टेटिक समारोह कॉल गैर स्थिर समारोह सी ++
- 16. माना lua आदेश जब एक सी समारोह
- 17. Emacs: यूनिवर्सल तर्क (सी-यू) एक समारोह
- 18. सी के लिए एक न्यूनतम हैश समारोह?
- 19. प्रश्न समारोह सूचक सी में बारे में
- 20. सी #: समारोह मूल्यांकन (सी बनाम)
- 21. सी ++ मैं कैसे एक समारोह consts
- 22. सी ++ में, एक विधि है और एक समारोह के बीच क्या अंतर है
- 23. समारोह मूल्यांकन अक्षम है क्योंकि पिछले एक समारोह मूल्यांकन
- 24. सी: सूचक समारोह
- 25. सी ++: समारोह कॉल लाइन
- 26. पासिंग सी Cython समारोह
- 27. समारोह संकेत और सी ++
- 28. सी ++ समारोह कॉल पहचानकर्ता
- 29. स्टेटिक समारोह सहायता सी ++
- 30. सी: memset समारोह
मेरी सी शिक्षकों में से एक (जो आधिकारिक तौर पर एक सी ++ शिक्षक) हमें WinPI कॉल का उपयोग करके लागू की गई एक विधि को परिभाषित करने वाली सी हेडर फ़ाइल देने के लिए उपयोग किया जाता था। उन्होंने यह समझाने में समय नहीं लगाया कि यह किसी भी मानक पुस्तकालय का हिस्सा नहीं था, इस प्रकार वह हमेशा उन छात्रों से प्रश्न पूछता था जो घर पर अपने उदाहरण संकलित नहीं कर सके। वह का प्रशंसक भी था। अहह यादें ... –
Trillian
क्या आपने कभी इसे मेरे आदमी को समझ लिया था? :) – NTDLS