C 學習筆記2020 1

2021-10-04 04:43:25 字數 2343 閱讀 4126

在c語言中可以通過結構體名來定義變數,在 c++ 中可以通過類名來定義變數。不同的是,通過結構體定義出來的變數還是叫變數,而通過類定義出來的變數有了新的名稱,叫做物件(object)。

物件是類的乙個例項(instance)

iostream.h:用於控制台輸入輸出標頭檔案。

fstream.h:用於檔案操作的標頭檔案。

complex.h:用於複數計算的標頭檔案。

在c語言中,動態分配記憶體用 malloc() 函式,釋放記憶體用 free() 函式。

c++又新增了兩個關鍵字,new 和 delete:new 用來動態分配記憶體,delete 用來釋放記憶體。

和 malloc() 一樣,new 也是在堆區分配記憶體,必須手動釋放,否則只能等到程式執行結束由作業系統**。

一般是將非常短小的函式宣告為內聯函式。

由於內聯函式比較短小,我們通常的做法是省略函式原型,將整個函式定義(包括函式頭和函式體)放在本應該提供函式原型的地方。

引數列表不同包括引數的個數不同、型別不同或順序不同,僅僅引數名稱不同是不可以的。函式返回值也不能作為過載的依據。

at() 是 string 類的乙個成員函式,它會根據下標來返回字串的乙個字元。與[ ]不同,at() 會檢查下標是否越界,如果越界就丟擲乙個異常;而[ ]不做檢查,不管下標是多少都會照常訪問。

捕獲異常的語法為:

trycatch(exceptiontype variable)
c++ 規定,派生類虛函式的異常規範必須與基類虛函式的異常規範一樣嚴格,或者更嚴格。只有這樣,當通過基類指標(或者引用)呼叫派生類虛函式時,才能保證不違背基類成員函式的異常規範。

c++ 規定,異常規範在函式宣告和函式定義中必須同時指明,並且要嚴格保持一致,不能更加嚴格或者更加寬鬆。

iostream 標頭檔案中定義了四個標準流物件,它們是 cin、cout、cerr 和 clog。

cin 對應於標準輸入流,用於從鍵盤讀取資料,也可以被重定向為從檔案中讀取資料。

cout 對應於標準輸出流,用於向螢幕輸出資料,也可以被重定向為向檔案寫入資料。

cerr 對應於標準錯誤輸出流,用於向螢幕輸出出錯資訊,不能被重定向。

clog 對應於標準錯誤輸出流,用於向螢幕輸出出錯資訊,不能被重定向。

cerr 和 clog的區別在於:cerr 不使用緩衝區,直接向顯示器輸出資訊;而輸出到 clog 中的資訊會先被存放到緩衝區,緩衝區滿或者重新整理時才輸出到螢幕。

cout 可以被重定向,而 cerr 不能。所謂重定向,就是將輸入的源或輸出的目的地改變。例如,cout 本來是輸出到螢幕上的,但是經過重定向,本該輸出到螢幕上的東西就可以被輸出到檔案中。

c++ 中常用的輸出流操縱運算元在標頭檔案 iomanip 中定義。

多個標誌可以用|運算子連線,表示同時設定。

setw() 運算元所起的作用是一次性的,即只影響下一次輸出。每次需要指定輸出寬度時都要使用 setw()。

在讀入字串時,setw() 還能影響 cin 的行為。setw() 用於 cin 時,同樣只影響下一次的輸入。

除了使用 cout.put() 函式輸出乙個字元外,還可以用 putchar() 函式輸出乙個字元。putchar() 函式是c語言中使用的,在 stdio.h 標頭檔案中定義,c++保留了這個函式,在 iostream 標頭檔案中定義。

從控制台讀取資料,在控制台中輸入特殊的控制字元就表示輸入結束了:

1)在 windows 系統中,通過鍵盤輸入時,按 ctrl+z 組合鍵後再按回車鍵,就代表輸入結束。

2)在 unix/linux/mac os 系統中,ctrl+d 代表輸入結束。

注意:不管是檔案末尾,還是 ctrl+z 或者 ctrl+d,它們都是結束標誌;cin 在正常讀取時返回 true,遇到結束標誌時返回 false,我們可以根據 cin 的返回值來判斷是否讀取結束。

get() 是 istream 類的成員函式,從輸入流中讀入乙個字元,返回值就是該字元的 ascii 碼。如果碰到輸入的末尾,則返回值為 eof。get() 函式不會跳過空格、製表符、回車等特殊字元,所有的字元都能被讀入。

peek() 是 istream 類的成員函式。

此函式返回輸入流中的下乙個字元,但是並不將該字元從輸入流中取走——相當於只是看了一眼下乙個字元,因此叫 peek。

cin.peek() 不會跳過輸入流中的空格、回車符。在輸入流已經結束的情況下,cin.peek() 返回 eof。

在讀寫檔案時,有時希望直接跳到檔案中的某處開始讀寫,這就需要先將檔案的讀寫指標指向該處,然後再進行讀寫。

1) ifstream 類和 fstream 類有 seekg 成員函式,可以設定檔案讀指標的位置;

2)ofstream 類和 fstream 類有 seekp 成員函式,可以設定檔案寫指標的位置。

C 學習筆記( )

一 語法 迴圈 foreach 型別識別符號 in 表示式 code 用法 例子int temp foreach int num in temp 每次從temp取乙個元素賦給num直至取完 console.writeline n num 每行顯示乙個元素 執行結果 c 中唯讀 只寫控制 class ...

C 學習筆記

1.函式特徵 有函式頭和函式體 接受乙個引數 返回乙個值 需要乙個原型。2.c 命名規則 在名稱中只能使用字母字元 數字和下劃線 名稱的第乙個字元不能是數字 區分大寫字母和小寫字母 不能將c 關鍵字用作名稱 以兩個下劃線或下劃線和大寫字母打頭的名稱被保留給實現 編譯器及其使用的資源 使用,以乙個下劃...

c 學習筆記

屬性 屬性開頭字母大寫 屬性可以判斷輸入的非法值 屬性本身不儲存值 依靠字段 索引器 using system using system.collections.generic using system.linq using system.text namespace b try catch exc...