例如 Windows XP 下的一般視窗, 或是整個螢幕。
例如 Windows XP 環境中的 cmd 視窗, putty (SSH命令列) 視窗, Visual Studio 2005 命令提示字元, 筆記本應用程式的視窗等等。
除了傳統的打字機是純粹的文字模式 (因為它只有 52 個英文字模 10 個數字和一些標點符號的字模, 當然只能印出這些文字。), 還有掌上型計算機以 7 段式 LED 顯示數字以外。 現在已經很少看到電腦只有文字模式的輸出裝置了。 大部分的電腦顯示界面都具有文字模式和圖形模式, 但是現在的視窗系統幾乎都只用圖形模式了, 並以圖形模式來模擬文字模式。為什麼呢 因為
一般圖形模式所謂的解析度(resolution) 是指點陣圖橫向及縱向各分為多少點,例如: 640 x 480、 800 x 600 、 1024 x 768 、 1280 x 1024 等等, 在同樣大小的顯示器上分出的方格點愈多解析度愈高。
當然圖形模式中也可以顯示文字如下圖 (文字也是圖形的一種)
想像一下如果你寫一個程式要在圖形模式的螢幕上印出上圖的這個字的話, 你的程式是不是該要記下每一個座標點到底是黑的還是白的, 那還得了, 你寫的程式裡光光記這些東西就記不完了。 這個動作應該由作業系統來做, (也就是文字模式輸出, 程式中只要指定印出什麼字就好了), 因為我們的應用程式常常用文字和使用者溝通, 所以我們仍然常常在文字模式下操作。
例如: C 程式中使用的標準輸出入函式庫是文字模式下操作的, 當使用 printf("C"); 時, printf() 函式事實上只送一個位元組資料給作業系統中負責顯示的函式, 這個位元組就是 ASCII 編碼中 0x43, 而顯示函式自己找到對應的字型如下圖
顯示在目前字元游標的位置上,並將字元游標向右移一格, 你在寫程式時完全不需考慮這些細節。
請注意:在上例中, 我們看到字元游標一格一格向右移, 移出視窗的話不就看不到了嗎? (就好像一張紙打字打到紙張外面去了一樣,) 所以我們要有所謂的換列字元, 在 C 程式中以 '\n' 表示, 用來將字元游標移到下一列第一個字的位置上。 實際上 printf() 函式傳送給作業系統顯示函式時, 不見得只傳送一個位元組的 ASCII 碼, 也可能是兩個位元組的 ASCII 碼, 例如:在 UNIX 作業系統中 '\n' 是 ASCII 的 0x0D, 在 MSDOS '\n' 則代表 ASCII 的 0x0D 及 0x0A, 為什麼會這樣子呢? 如果你有打過以前的英文打字機的話, 你可能會知道打字機在換列的時候其實打字的人要做兩個動作, 一個動作是將紙往上捲動一列, 另外一個動作是將紙移到最左邊, 在 ASCII 的編碼中於是也讓 0x0D 代表捲動到下一列 (linefeed), 而 0x0A 則代表將紙移到最左邊 (carriage return) 的動作。