_getch_nolock_getwch_nolock

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

重要

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

構文

int _getch_nolock( void );
wint_t _getwch_nolock( void );

戻り値

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

解説

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

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

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

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

要件

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

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

// crt_getch_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 = _getch_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: Y

関連項目

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