ハノイの塔のコードを C で書いたばかりで、文字を使用してグラフィカル モードでソリューションを表示したかったのです。
SetConsoleCursorPosition
windows.h と関数を使用して、コンソールでカーソルを移動したいと考えています。
この機能が動作するかどうか、およびその使用方法を教えてください。いくつか例を挙げてください。
cplusplusSetConsoleCursorPosition
から取得した関数の呼び出し方法の例を次に示します。
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.
// ...
}
}
また、SDK のドキュメントを確認して、Win32 関数の使用方法を確認することもできます。関数の名前をグーグルで検索すると、通常、最初のヒットとして適切なドキュメント ページが表示されます。
の場合SetConsoleCursorPosition
、ページはここにあり、 のGetStdHandle
場合、ページはここにあります。