C語言總結(5)

2021-07-25 12:45:47 字數 935 閱讀 4753



strcpy,sprintf,memcpy的區別

1、操作物件不同,strcpy是對字串的操作,sprintf可以是任意資料型別,其目的物件是字串。memcpy是任意數可操作的據型別記憶體位址。

2、執行效率不同:memcpy最高,其次strcpy,sprintf效率最低

3、實現功能不同:strcpy是將兩字串進行拷貝,sprintf是將其他資料型別轉換成字串,memcpy是記憶體塊間的拷貝。

c++空類中有:預設的建構函式、預設析構函式、預設拷貝建構函式、預設賦值運算子、預設取位址運算子、用const修飾的取位址運算子。只有當實際使用這些函式的時候,編譯器才會去定義它們。

拷貝建構函式與賦值運算子的認識:(1)拷貝建構函式是要生成乙個新物件,而賦值運算子不能。(2)由於拷貝建構函式是直接構造乙個新的物件,所以初始化這個物件之前不用檢查源物件是否和建立物件相同。而賦值運算子則需要這個操作,另外賦值運算子中如果原來的物件中有記憶體分配要先記憶體釋放掉。注意:當有類中有指標型別的成員變數時,一定要重寫拷貝函式和賦值運算子,不要使用預設的。

類成員函式的重寫、過載和隱藏的區別

(1)重寫和過載主要有以下幾點不同

範圍的區別:被重寫的和重寫的函式在兩個類中,而過載和被過載的函式在乙個類中。

引數的區別:被重寫函式和重寫函式的引數列表一定相同,而被過載函式和過載函式的引數列表一定不同。

virtual的區別:重寫的基類中被重寫的函式必須要有virtual修飾,而過載函式和被過載函式可以被virtual修飾,也可以沒有。

(2)隱藏和重寫、過載有以下幾點不同。

與過載的範圍不同:與重寫一樣,隱藏函式和被隱藏函式在不同的乙個類中。

引數的區別:隱藏函式和被隱藏函式的引數列表可以相同,也可以不同。但是函式名肯定要相同。當引數不相同時,無論基類中的函式是否被virtual修飾,基類的函式都被隱藏,而不是重寫,也不會是過載。



C語言總結

複習了下c語言,總結如下 1.瑞年的判斷 1 能被4整除,但不能被100整除 2 能被100整除,又能被400整除 2.符號常量名使用大寫,字元使用字母數字下劃線組成,第乙個字母必須為字母或下劃線 3.以0開頭的是八進位制數 0123 十進位制83 以0x開頭的是十六進製制數。0x123 print...

C語言總結

早期的c 語言主要是用於unix系統。目前最流行的 語言有以下幾種 microsoft c 或稱 ms c borland turbo c 或稱 turbo c at t c 這些 語言版本不僅實現了ansi c標準,而且在此基礎上各自作了一些擴充,使之更加方便 完美。c語言簡潔 緊湊,使用方便 靈...

C語言總結

十一天課的總結 只為總結,詳細請看前面的 一 順序結構 從上往下依次執行的 結構 計算機執行程式時,都是編譯成二進位制檔案,計算機中又分為 二進位制 例如 101001001就是乙個二進位制數字 八進位制 例如 023767是乙個八進位制數字,前面的0代表這是乙個八進位制數字 十進位制 10,33,...