原创 C++容器(STL容器總結)---1

容器用於存放數據的類模板。可變長數組、鏈表、平衡二叉樹等數據結構在STL中都被實現爲容器 容器中可以存放基本類型的變量,也可以存放對象。對象或基本類型的變量被插入容器中時,實際插入的是對象或變量的一個複製品 STL中的許多算法(函數模版)

原创 利用RSA算法實現文件加密(C++)

瞭解     說道加密算法就不得不提起:對稱加密算法和非對稱加密加密算法     對稱加密算法:甲方選某擇一種加密規則,對信息進行加密。乙方使用同一種規則,對信息進行解密。由於加密和解密使用同樣規則(簡稱“密鑰”),因此被稱爲“對稱加密算

原创 CentOs 7 ------MySQL數據庫基礎(數據庫的安裝)

  什麼是數據庫 存儲數據用文件就可以了,爲什麼還要弄個數據庫? 文件保存數據有以下幾個缺點: 文件的安全性問題 文件不利於數據查詢和管理 文件不利於存儲海量數據 文件在程序中控制不方便 數據庫存儲介質: 磁盤    內存

原创 C++容器(list類模板總結)---4

list是順序容器的一種。list是一個雙向鏈表。使用list需要包含頭文件list。雙向鏈表的每一個元素中都有一個指針指向後一個元素,也有一個指針指向前一個元素 在list容器中,在已經定位到要增刪元素的位置的情況下,增刪元素能在常數時

原创 C++容器(關連式容器總結)

關連式容器內部的元素都是排好序的,有以下四種 set:排好序的集合,不允許有相同的元素 multiset:排好序的集合,允許有相同元素 map:每個元素都分爲關鍵字和值兩部分,容器中的元素是按關鍵字排序的,不允許有多個元素的關鍵字相同 m

原创 C++容器(STL迭代器總結)---2

      要訪問順序容器和關連式容器中的元素,需要通過“迭代器(iterator)”進行。迭代器是一個變量。相當於容器和操操縱容器的算法之間的中介。迭代器可以指向容器中的某個元素,通過迭代器就可以讀寫它指向的元素。迭代器和指針類似 迭代

原创 Linux下socket編程(實現回聲客戶端功能(修改版while()循環接收))

server.cpp #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <arpa/inet.h> #incl

原创 C++容器(STL vector類模版總結)---3

vector是最簡單的順序(序列)式容器,支持隨機訪問。vector就像一個動態數組,是典型的“將元素至於動態數組中加以管理”的抽象概念。vector可以實現數據結構中的隊列、數組和堆棧的所有功能 在 vector 容器中,根據下標隨機訪

原创 Linux下socket編程程序實現

實現功能:客戶端從服務器讀取一個字符串並打印出來。 server.cpp #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #i

原创 c++容器(list類模板總結)---5

       STL 中的算法 sort 可以用來對 vector 和 deque 排序,它需要隨機訪問迭代器的支持。因爲 list 不支持隨機訪問迭代器,所以不能用算法 sort 對 list 容器排序。因此,list 容器引入了 so

原创 Linux下socket編程(可簡單實現聊天的服務端與客戶端)

server.cpp #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <arpa/inet.h> #incl

原创 Linux下socket編程(實現回聲客戶端功能)

server.cpp #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <arpa/inet.h> #incl

原创 C++容器(STL deque總結)---6

deque是雙端隊列不規則的首字母縮寫,雙端隊列是動態大小的序列式容器,可以向兩端進行伸縮 特定的庫可以以不同的方式實現deque,但通常都是一種動態數組。不論在何種情況下,它都允許通過隨機訪問迭代器直接訪問單個元素,可以根據需要動態的伸

原创 Linux下socket緩衝區及阻塞模式

socket緩衝區 每個 socket 被創建後,都會分配兩個緩衝區,輸入緩衝區和輸出緩衝區。 write()/send() 並不立即向網絡中傳輸數據,而是先將數據寫入緩衝區中,再由TCP協議將數據從緩衝區發送到目標機器。一旦將數據寫入到

原创 C (map/multimap/set/multiset)底層實現---紅黑樹

紅黑樹(R-B TREE,全稱:Red-Black Tree),本身是一棵二叉查找樹,在其基礎上附加了兩個要求: 樹中的每個結點增加了一個用於存儲顏色的標誌域; 樹中沒有一條路徑比其他任何路徑長出兩倍,整棵樹要接近於“平衡”的狀態