C++ में कंसोल स्क्रीन क्लियर करने के लिए प्लेटफॉर्म-विशिष्ट कमांड का उपयोग करना पड़ता है। Linux/Unix में clear और Windows में cls कमांड उपयोग होती है।
Linux/Unix के लिए
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
cout << "Screen will be cleared in 2 seconds..." << endl;
sleep(2); // Linux में sleep() सेकंड में
system("clear"); // Linux/Unix/Mac के लिए
cout << "Screen cleared! This is a fresh screen." << endl;
return 0;
}
Windows के लिए
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
cout << "Screen will be cleared..." << endl;
Sleep(2000); // Windows में Sleep() मिलीसेकंड में
system("cls"); // Windows के लिए
cout << "Screen cleared!" << endl;
return 0;
}
क्रॉस-प्लेटफॉर्म समाधान
#include <iostream>
#include <cstdlib>
#ifdef _WIN32
#define CLEAR_CMD "cls"
#else
#define CLEAR_CMD "clear"
#endif
int main() {
cout << "Before clear\n";
system(CLEAR_CMD);
cout << "After clear\n";
return 0;
}
ANSI एस्केप कोड (बिना system() कॉल के)
#include <iostream>
using namespace std;
void clearScreen() {
// ANSI एस्केप सीक्वेंस: स्क्रीन क्लियर और कर्सर होम
cout << "\033[2J\033[1;1H" << flush;
}
int main() {
cout << "Line 1\nLine 2\nLine 3\n";
cout << "Clearing in 2 seconds..." << endl;
// स्लीप के लिए chrono उपयोग करें
this_thread::sleep_for(chrono::seconds(2));
clearScreen();
cout << "Screen cleared using ANSI codes!" << endl;
return 0;
}
तुलना:
| विधि | प्लेटफॉर्म | पक्ष | विपक्ष |
|---|---|---|---|
system("clear/cls") | सभी | सरल | धीमा, सुरक्षा जोखिम |
| ANSI एस्केप कोड | Unix/Linux/Mac, Windows 10+ | तेज, कोई प्रोसेस नहीं बनता | पुराने Windows में काम नहीं करता |
| ncurses लाइब्रेरी | Unix/Linux | पावरफुल UI कंट्रोल | जटिल, एक्सटर्नल लाइब्रेरी |
सिफारिश: आधुनिक C++ में ANSI एस्केप कोड या C++17 std::system के साथ क्रॉस-प्लेटफॉर्म मैक्रो उपयोग करें।