_getch、_getwch_getch, _getwch

エコーなしでコンソールから文字を取得します。Gets a character from the console without echo.


この API は、Windows ランタイムで実行するアプリケーションでは使用できません。This API cannot be used in applications that execute in the Windows Runtime. 詳細については、「ユニバーサル Windows プラットフォーム アプリでサポートされていない CRT 関数」を参照してください。For more information, see CRT functions not supported in Universal Windows Platform apps.


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

戻り値Return Value

読み取られた文字を返します。Returns the character read. エラーの戻り値はありません。There is no error return.


_Getch関数と _getwch関数は、文字をエコーしないでコンソールから1文字を読み取ります。The _getch and _getwch functions read a single character from the console without echoing the character. これらの関数のいずれも Ctrl + C の読み取りに使用することはできません。None of these functions can be used to read CTRL+C. ファンクション キーまたは方向キーを読み取るときは、各関数を 2 回呼び出す必要があります。最初の呼び出しは 0 または 0xE0 を返し、2 回目の呼び出しは、実際のキー コードを返します。When reading a function key or an arrow key, each function must be called twice; the first call returns 0 or 0xE0, and the second call returns the actual key code.

これらの関数は呼び出し元スレッドをロックするため、スレッド セーフです。These functions lock the calling thread and are therefore thread-safe. ロックしないバージョンについては、「_getch_nolock、_getwch_nolock」をご覧ください。For non-locking versions, see _getch_nolock, _getwch_nolock.

汎用テキスト ルーチンのマップGeneric-Text Routine Mappings

Tchar.h のルーチンTchar.h routine _UNICODE および _MBCS が未定義の場合_UNICODE and _MBCS not defined _MBCS が定義されている場合_MBCS defined _UNICODE が定義されている場合_UNICODE defined
_gettch_gettch _getch_getch _getch_getch _getwch_getwch


ルーチンによって返される値Routine 必須ヘッダーRequired header
_getch_getch <conio.h><conio.h>
_getwch_getwch <conio.h> または <wchar.h><conio.h> or <wchar.h>

互換性の詳細については、「 互換性」を参照してください。For more compatibility information, see 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: " );
      ch = _getch();
      ch = toupper( ch );
   } while( ch != 'Y' );

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

関連項目See also

コンソール入出力とポート入出力Console and Port I/O
_getche、_getwche_getche, _getwche
_cgets、_cgetws_cgets, _cgetws
getc、getwcgetc, getwc
_ungetch、_ungetwch、_ungetch_nolock、_ungetwch_nolock_ungetch, _ungetwch, _ungetch_nolock, _ungetwch_nolock