共用方式為


_fgetchar _fgetwchar

讀取 stdin的字元。

int _fgetchar( void );
wint_t _fgetwchar( void );

傳回值

傳回_fgetchar 做為 int 或 EOF 傳回讀取的字元表示錯誤或檔案結尾。**_**fgetwchar 傳回,為 wint_t,對應至讀取的字元寬字元或傳回 WEOF 指出錯誤或檔案結尾。對於兩個函式,請使用 feof 或 ferror 區別錯誤和一個文件關閉條件之間。

備註

這些函式讀取來自 stdin的單一字元。函式會將關聯的檔案指標 (如果有定義)、下一個字元。如果資料流已在檔案結尾,資料流的檔案結尾標記設定。

_fgetchar 相當於 fgetc( stdin )。它與 getchar也相同,不過,只有會實作為函式,而不是函式和巨集。_fgetwchar 是 _fgetchar的寬字元版本。

這些函式與 ANSI 標準。

泛用文字常式對應

Tchar.h 常式

未定義的 _UNICODE 和 _MBCS

已定義 _MBCS

已定義 _UNICODE

_fgettchar

_fgetchar

_fgetchar

_fgetwchar

需求

Function

必要的標頭檔

_fgetchar

<stdio.h>

_fgetwchar

<stdio.h> 或 <wchar.h>

主控台 Windows 市集 應用程式不支援。標準資料流控制代碼與主控台, stdin, stdout和 stderr,在這種情況下, C 執行階段函式在 Windows 市集 應用程式之前,可以使用它們必須重新導向。如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility)

範例

// crt_fgetchar.c
// This program uses _fgetchar to read the first
// 80 input characters (or until the end of input)
// and place them into a string named buffer.
//

#include <stdio.h>
#include <stdlib.h>

int main( void )
{
   char buffer[81];
   int  i, ch;

   // Read in first 80 characters and place them in "buffer":
   ch = _fgetchar();
   for( i=0; (i < 80 ) && ( feof( stdin ) == 0 ); i++ )
   {
      buffer[i] = (char)ch;
      ch = _fgetchar();
   }

   // Add null to end string 
   buffer[i] = '\0';
   printf( "%s\n", buffer );
}
  
  

.NET Framework 對等用法

請參閱

參考

資料流 I/O

fputc fputwc

getc getwc