1. ホーム
  2. c

[解決済み] SetConsoleCursorPosition関数の使用方法

2022-02-15 09:51:54

質問

ハノイの塔のコードをC言語で書きましたが、解答を文字を使ってグラフィカルに表示したいと思いました。

Windows.hを使用したいのですが SetConsoleCursorPosition 関数を使用して、コンソールでカーソルを移動させることができます。

この関数はどのように動作し、どのように使用するのか、いくつかの例を挙げて教えてください。

どのように解決するのですか?

を呼び出す例です。 SetConsoleCursorPosition 関数から引用しています。 cplusplus :

void GoToXY(int column, int line)
{
    // Create a COORD structure and fill in its members.
    // This specifies the new position of the cursor that we will set.
    COORD coord;
    coord.X = column;
    coord.Y = line;

    // Obtain a handle to the console screen buffer.
    // (You're just using the standard console, so you can use STD_OUTPUT_HANDLE
    // in conjunction with the GetStdHandle() to retrieve the handle.)
    // Note that because it is a standard handle, we don't need to close it.
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);

    // Finally, call the SetConsoleCursorPosition function.
    if (!SetConsoleCursorPosition(hConsole, coord))
    {
        // Uh-oh! The function call failed, so you need to handle the error.
        // You can call GetLastError() to get a more specific error code.
        // ...
    }
}

また、Win32関数の使用方法は、SDKのドキュメントで確認することができます。関数名でググると、大抵の場合、該当するドキュメントページが最初にヒットします。
について SetConsoleCursorPosition の場合、そのページは こちら の場合、そして GetStdHandle の場合、そのページは こちら .