原创 指針部分題

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                     編譯鏈接