1. 程式人生 > 其它 >第3章 鍵盤輸入和螢幕輸出

第3章 鍵盤輸入和螢幕輸出

3.1簡單的鍵盤輸入

Data Stream(資料流):資料流物件用於在各種不同的裝置(如鍵盤和螢幕)上執行基本的資料輸入和輸出操作。

所謂流,就是與輸入輸出裝置相關聯的資料通訊物件。

輸入:cin>>" ";        輸出:cout <<“ ”;

3.2流操縱符

流操縱符(setw, setfill, fixed,setprecision)用於對輸入和輸出資料流進行修改。

當程式中出現,在圓括號中有一個引數的流操縱符時,標頭檔案要加#include <iomanip>

setw :設定資料域的寬度(資料項在螢幕上所佔的列數)

setw 對輸出流中的下一個資料項起作用;

如果域寬設定得太小不足以顯示一個數值,

那麼系統會自動調整域寬,使其能夠顯示資料的所有位的數字;

setfill :把佔位符從空格改變為其他字元

setfill 把佔位符從空格改變為其他字元 ;

setfill 對送入輸出流中的所有後繼資料項都起作用;

setprecision: 用於指定要顯示的資料的位數

流操縱符fixed 和setprecision 將 一直對輸出流中的後繼資料項起 作用。

*endl:將游標移動到一個新行的起始位置,也屬於流操縱符,第2章已提到過,不再贅述

3.3 單個字元的輸入和輸出

Whitespace Characters(空白字元):

在螢幕上產生的顯示結果是不可見的空白或空格, 如Tab、Enter和空格鍵。

輸入方法:

一是用noskipws:不管從鍵盤讀入什麼

二是將函式get( )與輸入流物件 cin 聯合使用

輸出方法:

cout and its<<;

利用輸出流物件 cout 的成員函式put( )來顯示一個字元。

從鍵盤讀取單個字元(包括空格)

char ch;
cin>>ch;
cin>>noskipws>>ch;//從鍵盤讀取單個字元(包括空格)
cin.get(ch);
cout.put.(ch)

Programming pitfalls

1. 不要混淆流插入運算子(<<輸出)和流提取運算子(>>輸入)。

2. 某些流操縱符只作用於下一個資料域(例如setw);

而另外一些流操縱符(例如 setprecision)對所有的後繼資料域都起用。

3. 在使用圓括號中有一個引數的流操縱符時,例如setw( 4 ),標頭檔案#include<iomanip>是必需的。

對於其他流操縱符(例如endl),則不需要加入這一行。


        快速參考