目錄輸入輸出類派生關係
標準流物件
重定向
freopen("test.txt","w",stdout);
freopen("test.txt","r",stdin);
istream
類成員函式
輸入控制
while(cin>>x){} //istream物件內對強制型別轉換符bool進行了過載,具有了判斷功能
if(!cin.getline(str,size)){}
十進位制dec
(預設),oct
(八進位制),hex
(十六進製制)
設定寬度setw(int n)
或cin.width(int n);
——設定後是一次性的,可用於cin
設定浮點數精度setprecision(int n)
或cout.precision(int n);
對齊方式:left
、right
顯示正號+:showpos
;取消顯示正號:noshowpos
補齊字元setfill(char c);
科學計數法:scientific
實現原理
//ostream裡對《進行了過載,函式內部會呼叫p所指的函式,並以*this為引數,即cout
ostream& operator<< (ostream& (*p)(ostream&));
//使用者自定義流操作運算元
ostream& tab(ostream& output)
需包含標頭檔案
因為ifstream
和ofstream
分別是istream
和ostream
的派生類,所以也能使用cin
和cout
的成員函式
示例
ifstream fin("input.dat",ios::in|ios::binary); //以二進位制方式開啟檔案用於讀取資料
ifstream fin; fin.open("input.dat",ios::in|ios::binary); //another way to open file
if(!fout){
cout<
檔案路徑
"c:\\tmp\\output.txt" //絕對路徑
//相對路徑:
"\\tmp\\output.txt" //當前碟符根目錄下的tmp資料夾下的檔案
"tmp\\output.txt" //當前資料夾下tmp資料夾下的output.txt檔案
"..\\..\\tmp\\output.txt" //當前資料夾下的父資料夾的父資料夾下的tmp裡的output.txt
二進位制檔案讀寫 第七章 C 類模板
一 問答題 1 下面類模板宣告中,正確的是 a.template b.template c.template d.template 選擇c,d 2 函式模板和類模板有什麼區別?函式模板中定義的型別引數可以用在函式宣告和函式定義中,類模板中定義的型別引數可以用在類宣告和類實現中。函式模板的例項化是由編...
第七章 巨集與列舉
規則7 1 1 用巨集定義表示式時,要使用完備的括號。說明 m為巨集只是簡單的 替換,不會像函式一樣先將引數計算後,再傳遞。示例 如下定義的巨集都存在一定的風險。反例 若有除法運算,c a b計算錯誤 define rectangle area a,b a b a 1 b 1計算錯誤 define ...
第七章 取消與關閉
1.中斷 每個執行緒都有乙個boolean型別的中斷狀態,中斷是一種協作機制。public class thread 返回目標執行緒的中斷狀態 public boolean isinterrupted 清除當前執行緒的中斷狀態,並返回它之前的值,清除中斷狀態的唯一方法 public static b...