ホームページ > バックエンド開発 > C++ > Visual Studio 2019 C の CMD コマンドでバルト文字を使用する方法

Visual Studio 2019 C の CMD コマンドでバルト文字を使用する方法

Linda Hamilton
リリース: 2024-11-02 20:07:31
オリジナル
413 人が閲覧しました

How to Use Baltic Characters in CMD Commands with Visual Studio 2019 C  ?

Visual Studio 2019 C プロジェクトでのバルト文字の使用とそれらを使用した CMD コマンドの実行

Visual Studio 2019 C プロジェクトはバルト文字のサポートを提供します。これらの文字を使用するには、UTF-8 エンコードを使用するようにプロジェクトを構成する必要があります。これを行うには、次のコードをプロジェクトのソース ファイルに追加します。

<code class="cpp">#include <iostream>
#include <locale>

int main()
{
    std::locale::global(std::locale("en_US.UTF-8"));
    std::cout << "ĀāĀā" << std::endl;
}
ログイン後にコピー

プロジェクトが UTF-8 エンコーディングを使用するように構成されたら、コンソール アプリケーションと CMD コマンドでバルト文字を使用できるようになります。

バルト文字を 16 進文字列に変換

バルト文字を使用して CMD コマンドを実行するには、まずバルト文字を 16 進文字列に変換する必要があります。これは、次のコードを使用して実行できます。

<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>
ログイン後にコピー

バルト文字を使用した CMD コマンドの実行

バルト文字が 16 進文字列に変換されると、それらを使用して CMD コマンドを実行できます。これは、次のコードを使用して実行できます:

<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>
ログイン後にコピー

以上がVisual Studio 2019 C の CMD コマンドでバルト文字を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート