Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Menggunakan Watak Baltik dalam Perintah CMD dengan Visual Studio 2019 C?
Projek Visual Studio 2019 C menyediakan sokongan untuk aksara Baltik. Untuk menggunakan aksara ini, projek mesti dikonfigurasikan untuk menggunakan pengekodan UTF-8. Ini boleh dilakukan dengan menambahkan kod berikut pada fail sumber projek:
<code class="cpp">#include <iostream> #include <locale> int main() { std::locale::global(std::locale("en_US.UTF-8")); std::cout << "ĀāĀā" << std::endl; }
Setelah projek dikonfigurasikan untuk menggunakan pengekodan UTF-8, aksara Baltik boleh digunakan dalam aplikasi konsol dan dalam arahan CMD.
Untuk melaksanakan arahan CMD dengan aksara Baltik, ia mesti ditukar terlebih dahulu kepada rentetan heks. Ini boleh dilakukan menggunakan kod berikut:
<code class="cpp">#include <string> #include <sstream> #include <iomanip> std::string toHexString(const std::string& str) { std::stringstream ss; for (char c : str) { ss << std::hex << std::setw(2) << std::setfill('0') << (int)static_cast<unsigned char>(c); } return ss.str(); }</code>
Setelah aksara Baltik ditukar kepada rentetan hex, ia boleh digunakan untuk melaksanakan arahan CMD. Ini boleh dilakukan menggunakan kod berikut:
<code class="cpp">#include <windows.h> #include <iostream> #include <string> int main() { STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory(&si, sizeof(si)); si.cb = sizeof(si); ZeroMemory(&pi, sizeof(pi)); std::string cmd = "cmd /c echo "; cmd += "ĀāĀā"; if (!CreateProcess(NULL, (LPSTR)cmd.c_str(), NULL, NULL, FALSE, CREATE_NO_WINDOW, NULL, NULL, &si, &pi)) { std::cerr << "Error executing command" << std::endl; return 1; } WaitForSingleObject(pi.hProcess, INFINITE); CloseHandle(pi.hProcess); CloseHandle(pi.hThread); return 0; }</code>
Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Watak Baltik dalam Perintah CMD dengan Visual Studio 2019 C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!