輸入和輸出方法

主控台 I/O 有兩種不同的方法,其選擇取決於應用程式需要多少彈性和控制。 高階方法可啟用簡單的字元數據流 I/O,但它會限制存取主控台的 輸入螢幕 緩衝區。 低階方法需要開發人員撰寫更多程序代碼,並在更廣泛的函式中選擇,但也讓應用程式更具彈性。

注意

不建議針對新的持續開發使用低階方法。 鼓勵需要低階控制台 I/O 函式之功能的應用程式使用虛擬終端機序列,並探索我們有關傳統函式與虛擬終端機和生態系統藍圖的檔。

應用程式可以使用檔案 I/O 函式、ReadFile 和 WriteFile,以及控制台函式 ReadConsole 和 WriteConsole,來取得高階 I/O,以間接存取控制台的輸入和螢幕緩衝區。 高階輸入函式會篩選並處理主控台輸入緩衝區中的數據,以傳回輸入做為字元數據流,捨棄滑鼠和緩衝區重設大小輸入。 同樣地,高階輸出函式會寫入在螢幕緩衝區中目前游標位置顯示的字元數據流。 應用程式會藉由設定主控台的 I/O 模式,控制這些函式的運作方式。

低階 I/O 函式可讓您直接存取主控台的輸入和螢幕緩衝區,讓應用程式能夠存取滑鼠和緩衝區大小調整輸入事件的大小,以及鍵盤事件的擴充資訊。 低階輸出函式可讓應用程式讀取或寫入螢幕緩衝區中指定數目的連續字元儲存格,或讀取或寫入到螢幕緩衝區中指定位置的矩形字元儲存格區塊。 主控台的輸入模式可讓應用程式判斷滑鼠和緩衝區重設大小事件是否放在輸入緩衝區中,以影響低階輸入。 主控台的輸出模式對低階輸出沒有任何影響。

高階和低階 I/O 方法並非互斥,而且應用程式可以使用這些函式的任何組合。 不過,一般而言,應用程式會單獨使用一種方法或其他方法,我們建議將焦點放在一個特定範例上,以獲得最佳結果。

提示

理想的前瞻性應用程式將著重於高階方法,並在需要避免完全使用低階 I/O 函式時,透過高階 I/O 方法擴充虛擬終端機序列的進一步需求

下列主題描述主控台模式和高階和低階 I/O 函式。