_getch, _getwch

エコーなしでコンソールから文字を取得します。

重要

この API は、Windows ランタイムで実行するアプリケーションでは使用できません。 詳細については、「ユニバーサル Windows プラットフォーム アプリでサポートされていない CRT 関数」を参照してください。

構文

int _getch( void );
wint_t _getwch( void );

戻り値

読み取られた文字を返します。 エラーの戻り値はありません。

解説

_getch_getwch の関数は、文字をエコーしないでコンソールから 1 文字を読み取ります。 関数キーまたは方向キーを読み取るには、各関数を 2 回呼び出す必要があります。 最初の呼び出しでは、次の値が返されます00xE0 2 番目の呼び出しでは、キー スキャン コード返されます。

これらの関数は呼び出し元のスレッドをロックするため、スレッド セーフです。 ロックしないバージョンについては、「_getch_nolock_getwch_nolock」を参照してください。

既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT のグローバル状態」を参照してください

汎用テキスト ルーチンのマップ

Tchar.h ルーチン _UNICODE_MBCS が定義されていない _MBCS が定義されている _UNICODE が定義されている
_gettch _getch _getch _getwch

必要条件

ルーチンによって返される値 必須ヘッダー
_getch <conio.h>
_getwch <conio.h> または <wchar.h>

互換性の詳細については、「 Compatibility」を参照してください。

// crt_getch.c
// compile with: /c
// This program reads characters from
// the keyboard until it receives a 'Y' or 'y'.

#include <conio.h>
#include <ctype.h>

int main( void )
{
   int ch;

   _cputs( "Type 'Y' when finished typing keys: " );
   do
   {
      ch = _getch();
      ch = toupper( ch );
   } while( ch != 'Y' );

   _putch( ch );
   _putch( '\r' );    // Carriage return
   _putch( '\n' );    // Line feed
}
abcdefy
Type 'Y' when finished typing keys: Y

関連項目

コンソールとポート I/O
_getche, _getwche
_cgets, _cgetws
getc, getwc
_ungetch, _ungetwch, _ungetch_nolock, _ungetwch_nolock