原创 指針部分題
2000000可以參考前面的博客,指針的運算:https://mp.csdn.net/postedit/80601329
原创 I/O複用之select() poll() epoll()
select poll epoll io複用函數 n=select n==-1 失敗 n==0 超時 n>0 有n個描述符數據就緒 select 監聽描述符上有沒有用戶關心的事件(讀、寫、異常) poll() 同sel
原创 算法排序————快速排序,堆排序,歸併排序
1.快速排序:是對冒泡排序的一種改進,其基本思想是選取一個記錄作爲樞軸,經過一趟排序,將整段序列劃分爲兩個部分,其中一部分的值都小於樞軸,另一部分都大於樞軸,然後繼續對這兩部分進行排序,從而使整個序列達到有序。 1)我們從待排序的記錄序列
原创 算法排序————插入排序,希爾排序,選擇排序,冒泡排序
1.插入排序:以第二個數據開始,插入到數據前已排序好的數據序列中,並使其依舊有序。 實現過程: 算法的代碼實現: //函數功能:直接插入排序,把數據從小到大排序 //arr 表示數組 len 表示長度 時間複雜度O(n^2) 空
原创 紅黑樹
紅黑樹:一個二叉查找樹,紅黑樹也是平衡二叉樹的一種,但在每個結點上增加一個存儲位表示節點的顏色,可以是red或是black。 紅黑樹的性質: 1.每個結點或是紅的,或是黑的。 2.根結點是黑的。 3.每個葉結點是黑的空結點(NULL)。
原创 動態內存
局部變量分配在棧中,該區域在windows平臺默認爲1M, 動態分配的內存在堆中,該區域非常大,在windows平臺默認大於1.2G 使用動態內存的情況:1.需要通過變量定義數組 2.需要定義大容量的數組 創建動態內存:對內存的動態分
原创 課後作業複習
用篩選法求100之內的素數: void SiftPrime(int n) { int *arr = (int *)malloc(n*sizeof(n));//動態申請n個內存 int i; int j; asser
原创 C++的思想
函數重載:符號的生成規則 函數重載的三要素:1.同名 2.同參 3.同作用域 C函數名稱 C++函數原型:1.形參的個數 2.形參的類型 3.函數的形參 <1>形參的個數 <2>形參的類型 <3>形參的順序 多態:同一接口,不同的
原创 C語言幾道題
分析:char類型數據表示範圍爲-128~+127,所以197遠遠超出了char類型所能表示的範圍,將數據進行取反+1的操作 197的表示爲1100 0101------->0011 1011------>-59(第一位爲符號位,符號爲
原创 關於進程間的通信
進程間的通信:管道 信號量 消息隊列 socket套接字 管道:線性字節數組,類似文件,使用文件讀寫的方式進行訪問 管道分爲: 有名管道:fifio 相當於創建了一個文件,這個文件只要有權限的,所有人都能來訪問(不相
原创 進程及線程
程序:存儲在磁盤上的二進制可執行文件。是靜態的,一個程序可生成多個進程。 進程:一個正在運行的程序,是系統進行資源分配的基本單位。是動態的,是一次程序的實例化。 Linux進程描述符:struct task_struct 進程在其生命週期
原创 Linux基礎知識點小結
1、目錄結構 /lib /home /boot /proc /usr /var /mnt /root …… 2、-普通文件 d目錄文件 l鏈接文件 p管道文件 c,b設備文件 s套接字 3、權限:chomd r 4
原创 網絡基本知識及相關協議的端口小結
OSI七層模型: 應用層 --------------------- 爲應用程序提供服務 表示層 --------------------- 數據格式轉化,數據加密 會話層 -------------------
原创 select() poll() epoll()
select poll epoll io複用函數 n=select n==-1 失敗 n==0 超時 n>0 有n個描述符數據就緒 select 監聽描述符上有沒有用戶關心的事件(讀、寫、異常) poll() 同sel
原创 Linux gdb調試
release 發行版 debug 開發版本 可調試版本 添加了一些debug_*段 源代碼 ----》 可執行文件 默認的release 編譯鏈接