C 學習筆記六

2021-10-21 04:44:00 字數 1547 閱讀 2737

標準庫的棧、佇列、雙向佇列

io庫的條件狀態

輸出緩衝區的管理

使用的標頭檔案:#include

是乙個容器

使用的方法:

標準庫的棧是基於陣列的

和棧類似。使用標頭檔案:#include

優化了的雙向佇列,向兩端插入刪除開銷小,支援操作符,但是效能比vector差,占用更多記憶體

使用標頭檔案#include

方法:clear()刪除所有元素

empty()判斷是否為空

erase()刪除乙個元素

insert()插入乙個元素

max_size()返回能容納的最大元素數

pop_back()pop_front()刪除

push_back()push_front()插入

…流是乙個概念,用來形容輸入輸出的資訊

io庫的物件只有在沒有出錯的時候才能正常工作

檢查有沒有出錯的方法:

if

(cin)..

.// 或者

while

(cin >> ***)..

.

提供這幾種方法來訪問和操縱流狀態:

所有流物件包含乙個條件狀態成員,在出錯的時候指示**出錯了

系統在輸出前會把字串存在緩衝區裡面(c語言也是一樣的)

緩衝區重新整理的幾種情況:

程式結束

緩衝區滿了

使用endl顯示重新整理

使用unitbuf設定流的內部狀態

將輸出輸出流關聯,在輸入流讀入的時候將其重新整理

使用unitbuf重新整理所有輸出

例如

cout << unitbuf <<

"a"<<

"b"<< nounitbuf;

等價於

cout <<

"a"<< flush <<

"b"<< flush;

使用tie()進行繫結

它是istream或者ostream的方法,引數為乙個ostream的指標

傳遞0來打破該流上已經存在的繫結

cin.

tie(

&cout)

;ostream *old_tie = cin.

tie();

cin.

tie(0)

;cin.

tie(

&cerr)

;cin.

tie(0)

;cin.

tie(old_tie)

;

C 學習筆記(六)

函式 函式時乙個命名了的 塊,通過呼叫函式執行相應的 可以有0個或多個引數,通常會產生乙個結果。1.乙個典型的函式包含了四個部分 返回型別,函式名,形參列表以及函式體。2.函式的呼叫完成兩項工作 一是用是引數 隱式的 初始化函式對應的形參,當呼叫乙個函式時,首先建立乙個同型別的變數a,然後將a初始化...

c 學習筆記六

指標 可以使用指標記號操作儲存在陣列中的資料 可以在函式中訪問函式外部的大塊資料 動態為新變數分配空間 1 指標的宣告 long pnumber 2 位址運算子 例如 long number 1234l long pnumber pnumber number 3 間接運算子 4 指標的初始化 可以用...

c 學習筆記 六 委託

委託是一種引用方法的型別.一旦為委託分配了方法,該委託與方法具有相同的型別,委託象其他方法一樣具有返回值和引數.如 public delegate int mydelegate int x int y 與該委託簽名相匹配的方法可以分配給該委託.delegate關鍵字用於宣告乙個引用型別,通常委託用於...