共用方式為


_getch_nolock _getwch_nolock

從主控台取得字元,而不用 Echo 和,而不用鎖定的執行緒。

重要事項重要事項

這個 API 不能用於 Windows 執行階段執行的應用程式。如需詳細資訊,請參閱 CRT 函式不支援使用 /ZW

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

傳回值

傳回讀取的字元。不會回傳錯誤。

備註

_getch_nolock 和 _getwch_nolock 與秘密由其他執行緒的功能與_getchw 類似,差別在於它們是相同的未受保護的 _getch 。因為它們不會造成額外負荷鎖定其他執行緒,可能會比較快。在安全執行緒內容中只使用這些函式 (例如單一執行緒應用程式呼叫或的範圍控制代碼已經執行緒隔離的地方。

泛用文字常式對應

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
}
  

NET Framework 對等

不適用。若要呼叫標準 C 函式,請使用 PInvoke。如需更多的資訊,請參閱 Platform Invoke Examples

請參閱

參考

主控台和連接埠的 I/O

_getche _getwche

_cgets _cgetws

getc getwc

_ungetch、 _ungetwch、 _ungetch_nolock、 _ungetwch_nolock