_getche_nolock_getwche_nolock

エコーありで、ロックしないで、コンソールから文字を取得します。

重要

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

構文

int _getche_nolock( void );
wint_t _getwche_nolock( void );

戻り値

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

解説

他のスレッドによる干渉から保護されないことを除き、_getche_nolock および _getwche_nolock は、それぞれ、_getche および _getwche と同じです。 他のスレッドをロックアウトするオーバーヘッドが発生しないため、処理が速くなる場合があります。 これらの関数は、シングルスレッド アプリケーション、呼び出し元のスコープで既にスレッド分離を処理している場合などのスレッドセーフなコンテキストでのみ使用してください。

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

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

Tchar.h のルーチン _UNICODE_MBCS が定義されていない _MBCS が定義されている _UNICODE が定義されている
_gettche_nolock _getche_nolock _getch_nolock _getwche_nolock

要件

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

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

// crt_getche_nolock.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 = _getche_nolock();
      ch = toupper( ch );
   } while( ch != 'Y' );

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

関連項目

コンソール入出力とポート入出力
_cgets_cgetws
getcgetwc
_ungetch_ungetwch_ungetch_nolock_ungetwch_nolock