原创 算法之道,結構之法,非常有用

讀者可以到下面這個網址: http://blog.csdn.net/v_july_v/

原创 gcc和makefile(二)

工程管理器 在實際的開發過程中,僅僅通過使用gcc命令對程序進行編譯是非常低效的。原因主要有以下兩點。 1)程序往往是由多個源文件組成的,源文件的個數越多,那麼gcc的命令行就會越長。此外,各種編譯規則也會加大gcc命令行的複雜度。所以在

原创 gcc和makefile(一)

GCC在Linux平臺上,最流行的編譯系統是GCC(GNU Compile Collection)。GCC也是GNU發佈的最著名的軟件之一。GCC的功能非常強大,主要體現在兩方面。 1) GCC可以爲x86、ARM、MIPS等不同體系結構

原创 OSI(開放式系統互聯)的七層模型,並簡述其作用

OSI是Open System Interconnect的縮寫,這個模型把網絡通信的工作分爲7層,它們由低到高分別是 應用層(Application Layer)。 表示層(Presen tation Layer) 會話層(Ses

原创 簡述static關鍵字在c/c++中的作用

在C語言中,關鍵字static有三個明顯的作用: 1)在函數體內,一個被聲明爲靜態的變量在這一函數被調用過程中維持其值不變(該變量存放在靜態變量區)。 2) 在模塊內(但在函數體外),一個被聲明爲靜態的變量可以被模塊內所用函數訪問,但不能

原创 c語言之函數(一)

(一)函數(Function)是一段可以重複使用的代碼,這是從整體上對函數的認識。 C語言本身帶了很多庫函數,並分門別類地放在了不同的頭文件中,使用時只要引入對應的頭文件即可。 除了C語言自帶的函數,我們也可以編寫自己的函數,稱爲自定義函

原创 最會戴帽子的關鍵字-----extern

extern,外面的,外來的意思,那它有什麼作用了?舉個例子:假設你在大街上看到一個黑皮膚、綠眼睛、紅頭髮的美女(外星人?)或者帥哥。你的第一反應就是這人不是國產的。extern就相當於他們的這些區別於中國人的特性。extern可以置於變

原创 c語言之內存管理(二)

內存泄漏幾乎是很難避免的,會產生泄漏的內存,也就是說由malloc系列函數或new操作符分配的內存。如果用完之後沒有及時free或delete,這塊內存就無法釋放,直至整個程序終止。 1)如何使用malloc函數 malloc函數的原型:

原创 C語言之內存管理(一)

1.一般來說,我們可以簡單地理解爲內存分爲3個部分:堆,棧和靜態區。堆棧就是棧,而不是堆。堆的英文是heap;棧的英文是stack,也翻譯爲堆棧。 1)堆:由malloc系列函數或new操作符分配的內存。其生命週期又free或delete

原创 面向對象的三個特徵及其優缺點

1、封裝       把客觀的事物封裝成抽象的類;類可以將自身的數據和方法給可信的類或者對象操作,對不可信的進行隱藏信息。 2、繼承       可以在現有類的基礎上無需重寫,擴展類的功能.       通過繼承創建的新類稱

原创 c語言之指針和數組(一)

1.指針的概念:簡單來說,指針表示的是它指向對象的地址 2.一切都是地址:數據和代碼都以二進制的形式存儲在內存中,CPU只能通過地址來取得內存中的代碼和數據,CPU訪問時需要的是地址,而不是變量名和函數名,當源文件被編譯和鏈接成可執行程序

原创 TCP的三次握手協議

TCP(Transmission Control Protocol) 傳輸控制協議 TCP是主機對主機層的傳輸控制協議,提供可靠的連接服務,採用三次握手確認建立一個連接: 位碼即tcp標誌位,有6種標示:SYN(synchronous

原创 數據結構(一)

(一)1°從邏輯結構上分: (1)集合結構:該結構的數據元素間的關係是“屬於同一個集合”。 (2)線性結構:該結構的數據元素之間存在着一對一的關係。 (3)樹型結構:該結構的數據元素之間存在着一對多的關係。 (4)圖形結構:該結構的數據元

原创 Windows以及c++內存分配方式

Windows內存分配方式 Win32的堆分配函數 每一個進程都可以使用堆分配函數創建一個私有的堆──調用進程地址空間的一個或者多個頁面。DLL創建的私有堆必定在調用DLL的進程的地址空間內,只能被調用進程訪問。 HeapCreate用

原创 c++對C語言的擴展(一)

(一) C++對C的加強:1)命名空間:爲什麼要引入命名空間這個概念:一箇中大型軟件往往由多名程序員共同開發,會使用大量的變量和函數,不可避免地會出現變量或函數的命名衝突。當所有人的代碼都測試通過,沒有問題時,將它們結合到一起就有可能會出